在 CentOS 下配置 Go 模块(Go Modules),一般包含以下几个方面:安装 Go、开启模块支持、配置代理、初始化模块和管理依赖。下面按步骤说明。
# 下载(以 go1.22 为例,可自行替换版本)
wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gz
# 解压
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz
编辑 ~/.bashrc 或 ~/.profile:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
使配置生效:
source ~/.bashrc
验证:
go version
Go 1.13+ 默认已启用模块,但建议显式配置:
go env -w GO111MODULE=on
在 CentOS 上拉取模块经常受网络影响,建议配置代理:
go env -w GOPROXY=https://proxy.golang.org,direct
# 国内推荐
go env -w GOPROXY=https://goproxy.cn,direct
可选(私有仓库):
go env -w GOPRIVATE=git.example.com,github.com/yourorg
查看当前配置:
go env
进入你的项目目录:
mkdir myproject
cd myproject
go mod init github.com/yourname/myproject
会生成:
go.mod
go get github.com/gin-gonic/gin
go mod tidy
go list -m all
go get -u github.com/gin-gonic/gin
go build
go run main.go
go test ./...
Go 模块需要 git:
sudo yum install -y git
尝试:
go env -w GOPROXY=off # 仅本地
或切换为:
go env -w GOPROXY=https://goproxy.io,direct
go mod init
go mod tidy
如果你有 具体场景(比如私有 GitLab、内网环境、Go 版本、CentOS 7/8),可以告诉我,我可以给你更针对性的配置方案。