温馨提示×

golang在linux怎样配置

小樊
39
2026-10-24 17:50:14
栏目: 编程语言

你这个问题比较宽泛,下面我按最常见的几种“配置 Golang 在 Linux 上”的场景来说明,你可以根据需要看对应部分。


一、在 Linux 上安装并配置 Go 环境(最常用)

1. 下载 Go(以 amd64 为例)

cd /tmp
wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz

2. 解压到 /usr/local

sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz

3. 配置环境变量

编辑你的 shell 配置文件(看你用的 shell):

Bash 用户

vim ~/.bashrc

Zsh 用户

vim ~/.zshrc

在文件末尾添加:

export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin

4. 使配置生效

source ~/.bashrc
# 或
source ~/.zshrc

5. 验证

go version

输出类似:

go version go1.22.5 linux/amd64

二、Go 项目基本配置(go mod)

初始化项目

mkdir myproject
cd myproject
go mod init myproject

设置代理(国内推荐)

go env -w GOPROXY=https://goproxy.cn,direct

常用 Go 环境变量

go env

常见配置:

go env -w GO111MODULE=on
go env -w GOPROXY=https://proxy.golang.org,direct

三、Linux 下运行 Go 程序

编译

go build -o app main.go

运行

./app

后台运行

nohup ./app > app.log 2>&1 &

四、用 systemd 管理 Go 程序(生产环境)

示例:/etc/systemd/system/myapp.service

[Unit]
Description=Go App
After=network.target

[Service]
ExecStart=/home/user/go/app
WorkingDirectory=/home/user/go
User=user
Restart=always

[Install]
WantedBy=multi-user.target

然后:

sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl enable myapp

五、交叉编译(在 Linux 编译其他平台)

# 编译 Windows
GOOS=windows GOARCH=amd64 go build

# 编译 macOS
GOOS=darwin GOARCH=arm64 go build

六、常见坑提醒

  • ❌ 不要直接 apt install golang(版本很旧)
  • ✅ 推荐官方 tar 包安装
  • ✅ Linux 服务器建议用 systemd 管理
  • ✅ 国内一定配置 GOPROXY

如果你指的是 “Linux 下 Go 的某一具体配置”(比如:

  • Go + Nginx
  • Go + MySQL
  • Go 交叉编译
  • Go 在 Docker 里配置
  • Go 开发环境 VS Code)

可以直接告诉我你的具体使用场景,我可以给你更精准的配置方案。

0 踩