环境准备
1. 安装 Go
- 打开 https://go.dev/dl/,安装与操作系统匹配的版本。
- 终端执行:
go version
参考工程 go.mod 中的 go 版本号为基准(例如 go 1.22+ 或更新)。以你本地克隆仓库的 go.mod 为准,版本偏低请升 级。
可选检查:
go env GOROOT GOPATH GOMODCACHE
现代 Go 模块模式不强制老式 GOPATH/src 三目录布局;把项目放在任意工作目录即可。
2. 必备工具
| 工具 | 用途 |
|---|---|
git | 获取源码 |
make | 使用仓库 Makefile 目标 |
curl | smoke / 健康检查 |
可选 python3 | 部分脚本选端口等 |
| 可选 MySQL | REPOSITORY_DRIVER=sql 时使用 |
编辑器推荐 VS Code(Go 插件)或 GoLand。
3. 获取参考工程
在你有权限的环境中,将 gostartkit/stub/golang/base 作为参考树(或等价 monorepo 路径):
# 示例:进入 base 工程根目录
cd /path/to/gostartkit/stub/golang/base
ls README.md Makefile go.mod cmd/monolith
确认存在:
cmd/monolith— 单体入口services/— 业务模块libs/platform、libs/contractsdeploy/migrations— SQL 迁移docs/— 英文架构与领域文档
4. 模块与工作区
参考工程通常包含:
- 根目录
go.mod(monolith 入口所在模块) - 各
services/*、libs/*自己的go.mod - 可选
go.work方便本地联调
首次进入目录后:
go work sync # 若使用 go.work
go mod download
网络若拉取 pkg.gostartkit.com/* 失败,检查代理与私有模块访问配置(GOPROXY、GOPRIVATE 等按团队约定)。
5. 环境变量文件
本地开发可从示例复制:
cp .env.example .env
按需修改数据库、密钥等。不要把含真实密钥的 .env 提交进 Git。
生产示例见仓库 .env.production.example。
6. 验证工具链
在 base 根目录:
go version
make -n run-monolith # 仅打印将执行的命令,确认 Makefile 可用
下一步:架构与目录。