Docker 支持(总览)
选择 Docker 后,gvt init 自动生成完整的容器化基础设施,包括多阶段 Dockerfile、docker-compose 编排、构建/部署脚本,以及 buildkitd.toml 镜像加速配置。
生成的文件
| 文件 | 说明 |
|---|---|
| docker/backend/Dockerfile | 多阶段构建(golang:alpine → alpine) |
| docker/frontend/*/Dockerfile | Nginx 多阶段(node:alpine → nginx:alpine) |
| docker/frontend/*/nginx.conf | API 反向代理到 backend |
| docker/docker-compose.yml | 编排 backend + db + 各前端服务 |
| docker/scripts/build.sh | 构建二进制 + Docker 镜像 |
| docker/scripts/deploy.sh | docker compose up -d 一键部署 |
| .dockerignore | 标准 Docker 忽略规则 |
| .gvt/docker.toml | Docker 构建配置(镜像仓库、平台、镜像列表) |
| buildkitd.toml | buildx 镜像加速配置(项目根目录) |
数据库服务
根据所选 ORM 自动配置:
- GORM + MySQL →
mysql:8.0,健康检查mysqladmin ping - GORM + PostgreSQL →
postgres:16-alpine,健康检查pg_isready - GORM + SQLite → 无独立数据库服务(文件型)
构建工具
gvt docker 从 .gvt/docker.toml 读取配置,执行宿主机预编译和多架构镜像构建。详见:
注意事项
- init 生成 Dockerfile,但
.gvt/docker配置由gvt docker add产出。 - 镜像加速通过根目录
buildkitd.toml配置,可按需修改镜像源。