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多阶段构建减小镜像体积。参考来源: