在 CentOS 无外网(离线)环境 中配置 Golang,一般有以下几种可行方案,按推荐顺序说明。
在可联网的机器上访问: https://go.dev/dl/
选择对应版本,例如:
wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz
通过 U 盘 / 内网 / scp 等方式拷贝:
go1.22.5.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz
编辑 /etc/profile 或 ~/.bashrc:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
使配置生效:
source /etc/profile
go version
yum install --downloadonly --downloaddir=./golang golang
scp -r golang/ root@离线IP:/root/
cd golang
rpm -Uvh *.rpm
验证:
go version
在有网环境:
go mod tidy
go mod vendor
将整个项目(含 vendor/)拷贝到离线机器:
go build -mod=vendor
有网机器:
go mod download
tar czf gomod.tar.gz $GOPATH/pkg/mod
离线机器:
tar xzf gomod.tar.gz -C $GOPATH/pkg/mod
离线环境可设置:
go env -w GO111MODULE=on
go env -w GOPROXY=off
建议使用 Go 1.20+ CentOS 7 可正常运行
✅ 推荐流程
go*.tar.gz/usr/local/goPATHvendor 解决依赖如果你能提供:
我可以给你更精确的离线配置步骤。