确保系统软件包为最新版本,避免依赖冲突:
# CentOS 7
sudo yum update -y
# CentOS 8及以上
sudo dnf update -y
根据CentOS版本选择对应命令:
# CentOS 8及以上(使用dnf)
sudo dnf install golang -y
# CentOS 7及以下(使用yum)
sudo yum install golang -y
安装完成后,通过以下命令检查Golang版本,确认安装成功:
go version
若输出类似go1.20.5 linux/amd64,则表示安装完成。
访问Golang官方下载页面,选择适合CentOS的Linux版本(如go1.20.5.linux-amd64.tar.gz),使用wget下载:
wget https://golang.org/dl/go1.20.5.linux-amd64.tar.gz
将下载的压缩包解压到/usr/local目录(系统级安装路径):
sudo tar -C /usr/local -xzf go1.20.5.linux-amd64.tar.gz
编辑用户配置文件(如~/.bashrc或~/.bash_profile),添加以下内容:
export GOROOT=/usr/local/go # Go安装路径
export GOPATH=$HOME/go # 工作目录(存放项目代码)
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin # 将Go命令加入PATH
export GO111MODULE=on # 启用Go Modules(推荐)
使配置生效:
source ~/.bashrc
再次运行go version,确认版本信息显示正常。
若已安装Docker,可通过Docker快速部署Golang环境,避免污染主机系统:
sudo yum install docker -y
sudo systemctl start docker
sudo systemctl enable docker
sudo docker pull golang:latest
将当前目录挂载到容器的/go/src/app,进入容器终端:
sudo docker run -it --rm -v $(pwd):/go/src/app -w /go/src/app golang:latest bash
容器内可直接使用go命令,项目代码保存在宿主机的当前目录。
国内访问Golang模块仓库较慢,可设置国内代理(如goproxy.cn):
export GOPROXY=https://goproxy.cn,direct
若需永久生效,可将上述命令添加到~/.bashrc中。
在项目目录中创建go.mod文件(管理依赖):
go mod init <module-name> # 如go mod init github.com/yourname/hello
创建hello.go文件:
package main
import "fmt"
func main() {
fmt.Println("Hello, Golang on CentOS!")
}
运行程序:
go run hello.go
若输出Hello, Golang on CentOS!,则说明环境配置成功。
sudo提升权限,但建议将Go工作目录(GOPATH)设置为当前用户目录(如$HOME/go),避免全局安装。gcc、make):sudo yum install gcc make -y # CentOS 7
sudo dnf install gcc make -y # CentOS 8+