Dujiaoka-Next 环境配置指南
核心配置文件解析
本项目的所有系统关键配置都集中在根目录下的唯一环境变量文件 .env 中。此设计极大地方便了使用 Docker 部署用户进行快速的业务参数调整。如果你通过 Git Clone 源码的方式部署,需要自己复制 .env.example -> .env;使用预构建的发布包时则可能已附带或需要手动创建。
.env 配置项对照表
最新的部署环境变量示例参数一览:
DB_NAME=dujiao_db
DB_PASSWORD=dujiao_password
DB_USER=dujiao_user
HOST_BIND_IP=0.0.0.0
POSTGRES_PORT=5434
REDIS_DB=0
REDIS_PASSWORD=
REDIS_PORT=6381
TAG=latest
API_PORT=3001
USER_PORT=3000
ADMIN_PORT=3002
API_URL=http://127.0.0.1:3001
详细参数说明
数据库配置 (PostgreSQL)
为了保证数据的可靠性和结构的严谨性,项目底层选择了稳健的 PostgreSQL:
| 变量名 | 默认值示例 | 类型 | 参数说明 |
|---|---|---|---|
DB_NAME | dujiao_db | 必填 | 连接使用的 PostgreSQL 数据库名称。 |
DB_USER | dujiao_user | 必填 | 数据库专属的授权访问用户。 |
DB_PASSWORD | dujiao_password | 必填 | 数据库用户对应的验证口令密码。 |
POSTGRES_PORT | 5434 | 选填 | 外部连接到 PostgreSQL 容器暴露的端口。(如果不需要外部直连数据库,建议无需更改,容器内部通信走内部网络) |
安全建议
强烈建议在投入生产环境前,将 DB_PASSWORD 和 DB_USER 更改为复杂的随机字符串。
缓存配置 (Redis)
高速的 Redis 缓存支持用于提升系统并发以及处理后台队列任务:
| 变量名 | 默认值示例 | 参数说明 |
|---|---|---|
REDIS_DB | 0 | 指定当前项目连接使用的 Redis 0 号数据库块。 |
REDIS_PORT | 6381 | 绑定到宿主机的 Redis 访问端口。 |
REDIS_PASSWORD | (为空) | Redis 若开启了密码访问的密钥,默认未设置。 |
系统与容器启动配置
| 变量名 | 默认值示例 | 参数说明 |
|---|---|---|
TAG | latest | 容器镜像启动时拉取的最新标签,代表永远追随新版。你也可以指定对应的某个发行版数字锁死版本,如 v2.0.0。 |
HOST_BIND_IP | 0.0.0.0 | 影响安全 映射开放绑定的网卡 IP。初始默认 0.0.0.0 意味着公网只要带上端口就能直接访问业务(包括后台)。一旦配置了 Nginx 反向代理绑定正式域名,务必改成 127.0.0.1 强制只允许本机进程反代访问,隐藏真实端口。 |
服务端点与接口配置 (核心)
这是驱动前后台与前端界面正常交换数据的命脉配置:
| 变量名 | 默认值示例 | 参数说明 |
|---|---|---|
USER_PORT | 3000 | C端普通用户/访客最终访问的前台网页容器端口。 |
API_PORT | 3001 | 承压最重的核心接口服务容器暴露端口。 |
ADMIN_PORT | 3002 | 全局管理员登陆访问的后台页面容器端口。 |
关键易错点:API_URL
API_URL=http://127.0.0.1:3001 这个参数决定了前端(包含 C 端和管理端)在浏览器运行时去哪里请求后端接口:
- 如果你在本地单纯使用 IP 直接访问:它必须配置成
http://你的公网服务器真实IP:3001。 - 如果你为平台正式挂载了域名:它必须修改为你的正式 API 通信域名,例如
API_URL=https://api.你的域名.com。
为什么它不能一直是 127.0.0.1? 因为客户端渲染模式下,用户的电脑(浏览器)并不知道你的服务器 127.0.0.1 是谁,浏览器会傻傻地去请求用户自己的电脑,导致页面一片空白或是“网络连接被拒”。
使修改的配置生效
当你完成了对 .env 文件的编辑并保存后,容器并不会自动识别这些变更。你需要回到存放有该配置文件的项目根目录的终端中,执行强制重建命令:
docker compose up -d --force-recreate执行后 Docker 会重新生成带有新环境变量的新容器替代表旧容器,你的配置才会真正生效!
支付渠道配置
目前系统支持多种支付方式,本节将详细说明各支付渠道的配置方法。
支付宝 - 当面付 推荐
支付宝当面付是一种签约门槛较低、体验优秀的支付方式。经过测试,该配置已验证通过。
基础信息
- 渠道类型: 官方
- 状态: 已测试成功
1. 支付宝官方配置
你需要前往 支付宝开放平台 获取以下关键信息:
| 配置项 | 说明 | 获取方式 |
|---|---|---|
| 应用ID (AppID) | 支付宝应用的唯一标识 | 应用详情页左上角 |
| 应用私钥 | 用于签名的私钥 | 使用支付宝开发助手生成 |
| 支付宝公钥 | 支付宝的公钥(非应用公钥) | 应用详情页 -> 开发设置 -> 接口加签方式 |
如何获取密钥?
- 下载并安装“支付宝开放平台开发助手”。
- 生成密钥对(应用私钥 + 应用公钥)。
- 在支付宝开放平台后台“接口加签方式”中设置“应用公钥”,随后平台会自动生成对应的支付宝公钥。
- 将应用私钥和支付宝公钥填入系统配置中。
2. 异步通知地址
这是支付成功后,支付宝服务器通知我们系统发货的关键地址。
配置格式
请严格按照以下格式填写,确保公网可访问:
https://api容器的域名/api/v1/payments/callback示例:如果你的 API 域名是 api.example.com,则填写: https://api.example.com/api/v1/payments/callback
3. 其他配置
- 其余配置项保持默认即可,无需修改。