温馨提示×

Go语言在CentOS上的配置技巧

小樊
46
2026-01-09 23:45:42
栏目: 编程语言

在 CentOS 上配置 Go 的高效做法

一 安装与版本选择

  • 推荐安装最新的稳定版 Go(例如 1.20.x 或更高)。在 CentOS 7/8 上,既可使用官方二进制包,也可通过 yum 仓库安装。二进制包方式更可控,便于多版本并存与回滚。示例下载与解压:
    • wget https://golang.org/dl/go1.20.5.linux-amd64.tar.gz
    • sudo tar -C /usr/local -xzf go1.20.5.linux-amd64.tar.gz
  • 使用 yum(CentOS 7 示例,仓库可能版本较旧):
    • sudo yum install -y golang
  • 安装后验证:go version 应输出版本号。

二 环境变量与模块化配置

  • 推荐将 Go 二进制目录加入 PATH;GOROOT 通常无需显式设置(安装到 /usr/local/go 时会自动识别);GOPATH 建议设为 $HOME/go 并在需要时加入 PATH 的 $GOPATH/bin。示例(写入 ~/.bashrc 或 /etc/profile.d/golang.sh):
    • export GOROOT=/usr/local/go
    • export GOPATH=$HOME/go
    • export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
    • 使配置生效:source ~/.bashrc 或 source /etc/profile.d/golang.sh
  • 启用 Go Modules(Go 1.11+ 推荐),并设置国内代理提升拉取速度:
    • go env -w GO111MODULE=on
    • go env -w GOPROXY=https://goproxy.cn,direct
    • 如需恢复:go env -u GOPROXY / go env -u GO111MODULE
  • 验证:go env 查看生效的配置。

三 多用户与系统级配置

  • 为所有用户统一配置,优先在 /etc/profile.d/golang.sh 中写入环境变量,并 source 使其生效;如需立即全局生效,可执行 source /etc/profile。
  • 若使用 yum 安装,二进制通常位于 /bin/go,GOROOT 可能为空;此时以 go env 输出为准,无需强行设置 GOROOT。
  • 多版本并存建议:将不同版本解压到不同目录(如 /usr/local/go1.20/usr/local/go1.21),通过修改 PATH 或在脚本中显式指定 GOROOT 切换版本。

四 开发体验与常用工具

  • 安装 Git 与基础编译工具(用于拉取依赖与构建):sudo yum install -y git gcc make
  • 选择编辑器/IDE:
    • VS Code:安装系统包管理器提供的 code(如 sudo yum install -y code),再在 VS Code 中安装官方 Go 扩展,可获得格式化、调试、测试等工具链集成。
    • GoLand:JetBrains 官方 IDE,开箱即用。

五 部署与运行的最佳实践

  • 构建与运行:
    • 开发态:go run main.go
    • 生产态:go build -o myapp main.go 生成静态二进制,拷贝到服务器即可运行,无需额外运行时。
  • 进程守护与反向代理:
    • 使用 Nginx 作为反向代理(示例将 80 转发至 localhost:8080),配置 upstream 与 proxy_pass 即可。
    • 使用 Supervisor 管理进程:配置 program 的 command、directory、autostart、autorestart 与日志路径,确保崩溃自启与集中日志。

0