发布于2026-07-13 阅读(0)
扫一扫,手机访问
先聊聊在CentOS上打包Go语言应用这事儿。说白了,就是把Go程序编译成一个可执行文件,这样哪怕目标机器上没有安装Go环境,也能直接跑起来。具体怎么操作?其实就几步,按部就班来就行。

先搞定Go环境——如果系统里还没装Go,直接通过包管理器装上就行:
sudo yum install golang
当然,你也可以从官网下载二进制包手动安装,但用yum最省事。
配置GOPATH和GOROOT——这两环境变量很关键。简单来说,GOPATH指向你的工作空间(里面的src目录放代码),GOROOT指向Go的安装路径。假设都放在默认位置,可以这么设:
export GOPATH=$HOME/go
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
如果想每次登录都自动生效,把这三行加到~/.bash_profile或~/.bashrc里就行。
写代码——在$GOPATH/src下创建项目目录,比如项目名叫myapp,那就建个$GOPATH/src/myapp,然后把Go源文件放进去。
编译——进入项目目录,执行go build:
cd $GOPATH/src/myapp
go build -o myapp
-o myapp指定输出文件名,不加的话默认就是当前目录的基名(也就是myapp)。
打包——如果你的应用还依赖了配置文件、静态资源之类的,得一起打包。用tar或zip都行:
tar czvf myapp.tar.gz myapp
这样就把可执行文件myapp压缩到了myapp.tar.gz里。
部署——把压缩包传到目标机器,解压后直接运行:
tar xzvf myapp.tar.gz
./myapp
搞定,收工。
额外提一句:如果你的应用调用了C库或者其他非Go组件,编译时可能要用到CGO,或者得手动链接。另外,如果目标平台和开发机不同(比如在Linux上编译Windows程序),Go原生支持交叉编译——只要设置GOOS和GOARCH环境变量就行。举个例子,在Linux上为Windows 64位编译:
GOOS=windows GOARCH=amd64 go build -o myapp.exe
这样生成的myapp.exe就能直接在Windows 64位上跑了,真挺方便的。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8