|
|
45aa7deb87
|
feat: 添加环境变量管理工具和部署配置改版
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m33s
主要改动:
- 新增交互式环境配置脚本 (scripts/setup-env.sh)
- 新增本地启动快捷脚本 (scripts/run-local.sh)
- 新增环境变量模板文件 (.env.example)
- 部署模式改版:使用嵌入式配置 + 环境变量覆盖
- 添加对象存储功能支持
- 改进 IoT 卡片导入任务
- 优化 OpenAPI 文档生成
- 删除旧的配置文件,改用嵌入式默认配置
|
2026-01-26 10:28:29 +08:00 |
|
|
|
a80dc1e69d
|
修复容器健康检查失败的核心问题:IPv6 vs IPv4 和权限
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 3m47s
问题诊断(本地运行镜像验证):
1. 服务实际已启动在 3000 端口
2. 从宿主机访问健康检查 ✅ 成功
3. 容器内部 wget localhost:3000 ❌ 失败 (Connection refused)
4. 健康检查尝试连接 [::1]:3000 (IPv6),但 Fiber 只监听 IPv4
根本原因:
- wget localhost 优先解析为 IPv6 地址 [::1]
- Fiber 默认监听 0.0.0.0:3000 (仅 IPv4)
- Docker 健康检查失败 → 容器标记 unhealthy → Worker 无法启动
修复内容:
1. Dockerfile.api 健康检查: localhost → 127.0.0.1 (强制 IPv4)
2. docker-compose.prod.yml 健康检查: 同步修改
3. Dockerfile.api: 创建 logs 目录并设置 appuser 权限
4. cmd/api/main.go: OpenAPI 文档路径改为 logs/openapi.yaml
|
2026-01-20 11:50:28 +08:00 |
|
|
|
286defb063
|
修复 API 容器健康检查失败:统一端口配置并添加数据库环境变量
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 3m23s
问题1: 端口不一致
- Dockerfile.api 中 EXPOSE 和健康检查使用 8088
- config.yaml 中 API 实际监听 3000
- 健康检查失败导致容器 unhealthy
问题2: 缺少数据库环境变量
- entrypoint-api.sh 需要 DB_HOST、DB_USER 等环境变量执行迁移
- docker-compose.prod.yml 没有定义这些变量
- 容器启动脚本立即退出
修复:
- Dockerfile.api: EXPOSE 和健康检查改为 3000
- docker-compose.prod.yml: 添加完整的数据库环境变量
|
2026-01-20 11:33:26 +08:00 |
|
|
|
41bd3f5866
|
修复架构问题:显式指定 linux/amd64 平台
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 3s
问题:
- 私有仓库缓存了 ARM64 镜像(从 Mac M1/M2/M3 推送)
- 服务器是 AMD64 架构,导致 exec format error
解决:
- 在所有 FROM 指令中添加 --platform=linux/amd64
- 强制使用 AMD64 镜像,避免架构不匹配
- 适用于 Dockerfile.api 和 Dockerfile.worker
|
2026-01-20 10:20:12 +08:00 |
|
|
|
1e979cf017
|
重构部署流程:使用私有镜像仓库和标准化配置
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 1m42s
核心改进:
1. 使用私有仓库基础镜像(极速拉取)
- registry.boss160.cn/base/golang:1.25.6-alpine
- registry.boss160.cn/base/alpine:3.19
2. 移除 Docker Compose 安装步骤(已在服务器永久安装)
- 减少 51 行复杂逻辑
- 构建时间减少 10-60 秒
3. 移除文件复制步骤(configs 已在服务器部署目录)
- 减少 20+ 行代码
- 简化维护流程
4. 极简化部署逻辑
- 只保留:拉取镜像 → 重启服务 → 显示状态
- 从 ~30 行减少到 7 行
效果:
- 净减少 68 行代码
- 工作流清晰易懂
- 构建速度提升(基础镜像从内网拉取)
- 维护成本大幅降低
|
2026-01-20 10:13:50 +08:00 |
|
|
|
4d86799448
|
全面优化 Docker 构建和部署流程
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 1s
- Dockerfile.api/worker: 添加阿里云 Alpine 镜像源加速(构建+运行阶段)
- Dockerfile.api/worker: 提前设置 Go 环境变量(GOPROXY、CGO_ENABLED)
- Dockerfile.api: 移除 curl 依赖,改用 Alpine 自带 wget
- 工作流: 添加 Docker Hub 镜像加速(3个国内源)
- 工作流: 修复部署目录不存在问题(自动创建+复制配置)
预期构建时间:从 3+ 小时降低到 15-20 分钟
|
2026-01-20 09:43:42 +08:00 |
|
|
|
2336b140cc
|
优化 Docker 构建:启用 BuildKit + 使用阿里云 Alpine 镜像源加速
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4s
|
2026-01-20 09:33:24 +08:00 |
|
|
|
20a80982fe
|
固定 Alpine 版本为 3.19 以解决包兼容性问题
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 3h9m41s
|
2026-01-19 17:42:41 +08:00 |
|
|
|
5be74f2698
|
修正编译命令:编译整个目录而不是单个文件
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 13m37s
|
2026-01-19 17:26:43 +08:00 |
|
|
|
08736d2692
|
更新到 Go 1.25.6
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4m30s
|
2026-01-19 17:17:27 +08:00 |
|
|
|
919d4350d0
|
在所有 Go 命令中设置 GOTOOLCHAIN=auto
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4s
|
2026-01-19 17:14:12 +08:00 |
|
|
|
109c9f014b
|
设置 GOTOOLCHAIN=auto 支持自动工具链管理
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 56s
|
2026-01-19 17:11:36 +08:00 |
|
|
|
627ca54c65
|
添加国内 Go 代理加速依赖下载
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 4s
|
2026-01-19 17:08:39 +08:00 |
|
|
|
589197e284
|
添加 Docker 和 CI/CD 配置(无 SSH 方案)
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Failing after 0s
|
2026-01-19 14:56:40 +08:00 |
|