CentOS上打包Golang项目的流程如下:
安装Golang
go1.20.5.linux-amd64.tar.gz
),解压至/usr/local
:sudo tar -C /usr/local -xzf go1.20.5.linux-amd64.tar.gz
。~/.bashrc
或/etc/profile
中添加:export GOROOT=/usr/local/go
、export GOPATH=$HOME/go
、export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
,然后执行source
使配置生效。准备项目
main.go
文件,使用go mod init
初始化模块(若需依赖管理)。编译项目
export GOOS=linux
、export GOARCH=amd64
。go build -o myapp
(myapp
为生成的可执行文件名)。-ldflags="-extldflags='-static'"
参数,生成不依赖外部库的二进制文件。打包文件
config.yaml
)打包为压缩包:tar -czvf myapp.tar.gz myapp config/
。部署到服务器
tar -xzvf myapp.tar.gz
、chmod +x myapp
。./myapp
。可选步骤:
rpm-build
工具,编写.spec
文件后使用rpmbuild -ba
构建。go clean -cache
清理缓存,或通过Docker多阶段构建减小镜像体积。参考来源: