1.8 KiB
1.8 KiB
生产部署
1. 主机准备
minecraft-and-affine-server Gitea Runner 需要可执行 Docker Compose,并注册唯一的同名机器标签 minecraft-and-affine-server:host;部署工作流只匹配该标签,不会被其他全局 Runner 接走。其他服务器应使用各自唯一的同名标签。Runner 服务账号必须能读取 /opt/coffeechat/.env,建议将该文件权限限制为该账号可读:
POSTGRES_PASSWORD=随机数据库密码
JWT_SECRET=至少32位随机字符串
WECHAT_APP_ID=小程序AppID
WECHAT_APP_SECRET=小程序AppSecret
ADMIN_TOKEN=随机管理令牌
PUBLIC_BASE_URL=https://你的正式域名
COFFEECHAT_PORT=3100
推送 main 后,Runner 会构建容器、执行幂等迁移并启动服务。PostgreSQL 和上传图片分别保存在 coffeechat-db、coffeechat-uploads Docker 卷中,重新发布不会丢失。
2. HTTPS 反向代理
将正式域名反向代理至 127.0.0.1:3100,必须启用有效 HTTPS。健康检查路径为 /health,管理后台为 /admin/。
3. 微信公众平台
- 在“开发管理 → 开发设置”获取 AppSecret,填入服务器环境文件,不得提交仓库。
- 将正式 HTTPS 域名加入
request和uploadFile合法域名。 - 修改
miniprogram/config.js的apiBaseUrl。 - 使用微信开发者工具完成真机测试、代码上传和体验版审核。
微信群通过二维码加入。二维码由用户提交,管理员在 Web 后台审核;审核通过前不会对其他参与者展示。微信群二维码可能过期,管理员应在审核时验证有效性。
4. 数据备份
建议每天备份 coffeechat-db 卷中的 PostgreSQL,并同步备份 coffeechat-uploads 卷。恢复时必须同时恢复数据库与上传目录,避免图片记录与文件不一致。