Sign inSign up

anheyu/pro

By anheyu

Updated about 2 months ago

Image
1

10K+

anheyu/pro repository overview

Anheyu Pro — 安和鱼增强版

anheyu-app 基础上提供付费内容、会员、支付、OAuth、AI 等增值能力;技术栈与主应用一致:Go + Next.js(React)+ TypeScript

运行模式

默认模式:单二进制内嵌前端

发布二进制会把 Next.js standalone 运行资产嵌入 Go 程序。启动时,Go 会先把这些资源释放到临时目录,再拉起 Next.js 的 server.js

这个模式下,运行时不再需要外置 frontend/ 目录,但仍需要系统里有可执行的 node,因为 Next.js standalone 仍由 Node 启动。

显式外部前端

如果设置了以下环境变量之一,就会走外部前端覆盖:

  • ANHEYU_FRONTEND_URL:指向已运行的前端服务
  • ANHEYU_FRONTEND_DIR:指向磁盘上的 Next.js standalone 目录
自定义前台静态目录

保留 static/ 前台模式,用于替换公共前台页面;后台 /admin/_next/ 等仍由 Next.js 支撑。

构建方式

构建前端运行资产的顺序是:

cd frontend
npm ci
npm run build
cd ..
./scripts/prepare-embedded-frontend.sh

然后再执行 Go 编译或发布:

make build
# 或
./scripts/build.sh
# 或
goreleaser build --snapshot --clean

Makefilescripts/build.sh.goreleaser.yml 都会先准备嵌入式前端,再编译 Go 二进制。

从源码克隆

Pro 仓库的 Next.js 前台位于仓库内 frontend 目录。若仓库使用了子模块,请按仓库说明递归拉取:

git clone --recurse-submodules https://github.com/anzhiyu-c/anheyu-pro-backend.git
cd anheyu-pro-backend

若已克隆但 frontend 为空:

git submodule update --init --recursive

与主应用的关系

Pro 作为增强模块与 anheyu-app 配合使用:请先部署或联调主应用,再按项目内文档与 Makefile 集成 Pro 后端与配置。

文档与主仓库

许可证

以仓库内 LICENSE 为准(若与主应用授权不同,以 Pro 仓库声明为准)。

Tag summary

Content type

Image

Digest

sha256:d5f9e09fc

Size

225.3 MB

Last updated

about 2 months ago

docker pull anheyu/pro