温馨提示×

ubuntu golang编译版本怎么选

小樊
33
2026-10-24 23:12:22
栏目: 编程语言

在 Ubuntu 上选择 Golang 的编译版本(Go 版本),主要取决于你的使用场景、项目依赖和稳定性要求。下面从几个维度给你一个清晰的选择建议。


一、先看结论(快速选择)

场景 推荐版本
学习 / 新项目 最新稳定版(如 Go 1.22 / 1.23)
生产环境 / 稳定服务 上一个或当前稳定版(如 1.21/1.22)
老旧项目 / 第三方依赖多 项目 go.mod 指定版本
Docker / CI 官方镜像固定版本(如 golang:1.22)
Ubuntu 系统自带 不推荐用于开发(版本偏旧)

二、Ubuntu 自带 Go 的问题

Ubuntu 通过 apt 安装的 Go:

sudo apt install golang-go

❌ 缺点:

  • 版本通常落后(如 1.18 / 1.20)
  • 升级慢
  • 不适合新特性(泛型、loopvar 等)

✅ 仅适合:

  • 临时跑脚本
  • 不需要新特性的简单程序

三、推荐安装方式(重要)

✅ 方式 1:官方二进制(最推荐)

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

✅ 方式 2:使用版本管理工具(多版本切换)

gvm(适合开发)

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(适合多语言环境)

asdf plugin add golang
asdf install golang 1.22.5
asdf global golang 1.22.5

四、版本选择原则(经验建议)

1️⃣ 新项目

  • ✅ 直接用 最新稳定版
  • Go 向后兼容性极好
  • 新特性(泛型、性能优化)都能用

2️⃣ 生产环境

  • ✅ 选择 发布 ≥3 个月的稳定版
  • 避免 .0 版本(如 1.23.0)
  • 推荐:
    • 1.21.x
    • 1.22.x

3️⃣ 老项目

  • ❌ 不要盲目升级
  • 看 go.mod:
go 1.19
  • 用相同或兼容版本编译

五、Docker 中怎么选

✅ 固定版本(推荐):

FROM golang:1.22

❌ 不推荐:

FROM golang:latest

六、如何确认该用哪个版本?

go list -m -versions golang.org/x/...
go version

或查看项目要求:

cat go.mod

七、总结一句话

Ubuntu 上不要用 apt 的 Go,开发用官方最新稳定版,生产用上一个稳定版,Docker 固定版本号。

如果你愿意,可以告诉我:

  • Ubuntu 版本
  • 是否是生产环境
  • 项目类型(Web / 微服务 / CLI)

我可以给你具体版本号 + 安装命令。

0 踩