生产部署说明
目标访问地址:
http://hfb.221329.cc.cd:7890
生产部署只暴露宿主机 7890 端口,避免和服务器已有的 80、443 服务冲突。后端、MySQL、Redis、MinIO 均通过 Docker 内网通信。
1. 准备环境变量
cp backend/.env.prod.example backend/.env
编辑 backend/.env,至少替换以下占位值:
MYSQL_ROOT_PASSWORD
MYSQL_PASSWORD
MYSQL_DSN
JWT_SECRET
MINIO_ROOT_USER
MINIO_ROOT_PASSWORD
STORAGE_ACCESS_KEY_ID
STORAGE_SECRET_ACCESS_KEY
如果正式对外运营,还需要配置真实短信和实名服务,避免继续使用测试配置。
2. 启动服务
docker compose -f deploy/docker-compose.prod.yml up -d --build
3. 首次初始化数据库
将命令中的 change-hfb-password 替换为 backend/.env 里的 MYSQL_PASSWORD。
for file in backend/migrations/*.sql; do
docker compose -f deploy/docker-compose.prod.yml exec -T mysql \
mysql -uhfb -pchange-hfb-password hfb_sys < "$file"
done
4. 验证
curl http://127.0.0.1:7890/health
curl http://127.0.0.1:7890/api/health
浏览器访问:
http://hfb.221329.cc.cd:7890
http://hfb.221329.cc.cd:7890/admin/login
服务器安全组或防火墙需要放行 7890/tcp。