在 Ubuntu 上选择 Golang 的编译版本(Go 版本),主要取决于你的使用场景、项目依赖和稳定性要求。下面从几个维度给你一个清晰的选择建议。
| 场景 | 推荐版本 |
|---|---|
| 学习 / 新项目 | 最新稳定版(如 Go 1.22 / 1.23) |
| 生产环境 / 稳定服务 | 上一个或当前稳定版(如 1.21/1.22) |
| 老旧项目 / 第三方依赖多 | 项目 go.mod 指定版本 |
| Docker / CI | 官方镜像固定版本(如 golang:1.22) |
| Ubuntu 系统自带 | 不推荐用于开发(版本偏旧) |
Ubuntu 通过 apt 安装的 Go:
sudo apt install golang-go
❌ 缺点:
✅ 仅适合:
wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz
配置环境变量:
export PATH=$PATH:/usr/local/go/bin
验证:
go version
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
gvm install go1.22.5
gvm use go1.22.5 --default
asdf plugin add golang
asdf install golang 1.22.5
asdf global golang 1.22.5
.0 版本(如 1.23.0)1.21.x1.22.xgo.mod:go 1.19
✅ 固定版本(推荐):
FROM golang:1.22
❌ 不推荐:
FROM golang:latest
go list -m -versions golang.org/x/...
go version
或查看项目要求:
cat go.mod
Ubuntu 上不要用 apt 的 Go,开发用官方最新稳定版,生产用上一个稳定版,Docker 固定版本号。
如果你愿意,可以告诉我:
我可以给你具体版本号 + 安装命令。