eaa21585de
- pets-be/Dockerfile:多阶段单镜像,node 构建管理后台 → Go 编译内嵌 (go:embed)→ alpine 运行。一个容器同时提供 /api 与 /admin,50MB, 非 root、内置 tzdata 保证按东八区计算每日任务 - deploy/docker-compose.yml:只有一个 app 容器,MySQL/MinIO 用外部现成的, 容器内 9090 映射宿主机 4000 - deploy/.env.example:全部配置项(MySQL/MinIO/微信/AI/管理员) - .gitea/workflows/deploy.yml:push 或合并到 main 触发,runner 构建镜像 → save 打包 → scp 到服务器 → docker load + compose up -d → 健康检查 - 修复容器化阻塞问题:config.Load 原本强制要求 config.yaml(而它不进 git), 且 viper 未登记默认值的 key 环境变量绑不上。现补全默认值并把配置文件 改为可选,纯 .env 即可启动 - 服务端口统一改为 9090 验证:镜像构建通过;本地起完整栈 ping/admin/登录/建表 seed/图片上传全通; 对接真实 MySQL 9.4(sundynix_pet)建表 19 张并 seed 成功。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
25 lines
344 B
Plaintext
25 lines
344 B
Plaintext
# macOS
|
|
.DS_Store
|
|
|
|
# Claude Code local config
|
|
.claude/
|
|
|
|
# Go build output
|
|
pets-be/bin/
|
|
*.exe
|
|
*.out
|
|
|
|
# Node
|
|
pets-be/web/admin/node_modules/
|
|
npm-debug.log*
|
|
yarn-error.log*
|
|
|
|
# Logs / runtime
|
|
*.log
|
|
|
|
# Secrets — real config stays local; copy from config.example.yaml
|
|
pets-be/configs/config.yaml
|
|
|
|
# 服务器环境变量(含密钥)
|
|
deploy/.env
|