CentOS配置Golang的完整步骤
golang.google.cn,国内镜像加速),选择适合CentOS的Linux版本(如go1.23.1.linux-amd64.tar.gz),使用wget下载:sudo yum install -y wget # 安装wget工具(若未安装)
wget https://golang.google.cn/dl/go1.23.1.linux-amd64.tar.gz
/usr/local(Go的标准安装路径):sudo tar -C /usr/local -xzf go1.23.1.linux-amd64.tar.gz
dnf(默认包管理器)安装:sudo dnf update -y && sudo dnf install golang -y
yum安装:sudo yum update -y && sudo yum install golang -y
运行以下命令,若输出Go的版本信息(如go1.23.1 linux/amd64),则说明安装成功:
go version
为了让系统识别Go命令并自定义工作目录,需修改环境变量。推荐编辑全局配置文件/etc/profile(对所有用户生效):
sudo vi /etc/profile
在文件末尾添加以下内容(按需调整GOPATH路径,如$HOME/go为用户主目录下的go文件夹):
export GOROOT=/usr/local/go # Go安装目录
export GOPATH=$HOME/go # 工作目录(存放源代码、依赖包)
export GOBIN=$GOPATH/bin # 可执行文件目录
export PATH=$PATH:$GOROOT/bin:$GOBIN # 将Go命令加入PATH
export GO111MODULE=on # 启用Go Modules(推荐,管理依赖)
export GOPROXY=https://goproxy.cn,direct # 国内代理(加速依赖下载)
保存并退出编辑器(vi中按Esc→输入:wq→回车),然后使配置生效:
source /etc/profile
运行go env命令,检查关键变量是否配置正确:
go env
重点关注以下输出(需与配置一致):
GOROOT:应为/usr/local/go;GOPATH:应为$HOME/go(如/root/go或/home/username/go);GO111MODULE:应为on(启用模块);GOPROXY:应包含https://goproxy.cn(国内代理)。创建一个简单的“Hello, World!”程序,验证环境是否正常工作:
mkdir -p $GOPATH/src/hello # 创建项目目录(按GOPATH结构)
cd $GOPATH/src/hello # 进入项目目录
nano hello.go # 创建并编辑文件
在hello.go中输入以下代码:
package main
import "fmt"
func main() {
fmt.Println("Hello, Golang on CentOS!")
}
保存并退出编辑器(nano中按Ctrl+X→输入Y→回车),然后编译并运行:
go build hello.go # 编译生成可执行文件(hello)
./hello # 运行程序
若终端输出Hello, Golang on CentOS!,则说明配置完全成功。
Go 1.11及以上版本默认支持Modules,无需额外安装。在项目目录中初始化模块(替换<module-name>为你的模块名,如github.com/username/hello):
go mod init <module-name>
添加依赖(如github.com/gin-gonic/gin):
go get github.com/gin-gonic/gin
依赖会自动下载至$GOPATH/pkg/mod目录。
若需要隔离环境或部署到生产环境,可使用Docker:
# 拉取Golang镜像(最新版)
sudo docker pull golang:latest
# 运行容器(挂载当前项目目录,实时修改代码无需重启)
sudo docker run -it --rm -v $(pwd):/go/src/app -w /go/src/app golang:latest go run main.go
sudo(如sudo tar、sudo vi)。~/.bashrc仅对当前用户生效,/etc/profile对所有用户生效),并执行source命令刷新。GOPROXY已设置为国内镜像(如https://goproxy.cn),避免直接访问国外源。