在CentOS上定制Golang打包脚本可以帮助你自动化构建和部署Go应用程序。以下是一个基本的步骤指南,帮助你创建一个自定义的打包脚本。

首先,确保你已经在CentOS上安装了Go。如果没有安装,可以使用以下命令进行安装:
sudo yum install -y golang创建一个新的Shell脚本来处理打包过程。例如,创建一个名为build.sh的文件:
#!/bin/bash# 设置项目路径和输出目录PROJECT_DIR="/path/to/your/project"OUTPUT_DIR="/path/to/output"# 进入项目目录cd $PROJECT_DIR# 清理之前的构建文件rm -rf $OUTPUT_DIR/*# 构建二进制文件GOOS=linux GOARCH=amd64 go build -o $OUTPUT_DIR/yourapp .# 检查构建是否成功if [ $? -eq 0 ]; thenecho "Build successful!"elseecho "Build failed!"exit 1fi使用以下命令赋予脚本执行权限:
chmod +x build.sh现在你可以运行这个脚本来打包你的Go应用程序:
./build.sh你可以根据需要进一步自定义脚本,例如:
tar或zip命令压缩输出文件。#!/bin/bash# 设置项目路径和输出目录PROJECT_DIR="/path/to/your/project"OUTPUT_DIR="/path/to/output"# 获取当前版本号VERSION=$(git describe --tags `git rev-list --tags --max-count=1`)# 进入项目目录cd $PROJECT_DIR# 清理之前的构建文件rm -rf $OUTPUT_DIR/*# 构建二进制文件GOOS=linux GOARCH=amd64 go build -ldflags "-X main.Version=$VERSION" -o $OUTPUT_DIR/yourapp .# 检查构建是否成功if [ $? -eq 0 ]; thenecho "Build successful! Version: $VERSION"elseecho "Build failed!"exit 1fi#!/bin/bash# 设置项目路径和输出目录PROJECT_DIR="/path/to/your/project"OUTPUT_DIR="/path/to/output"# 获取当前版本号VERSION=$(git describe --tags `git rev-list --tags --max-count=1`)# 进入项目目录cd $PROJECT_DIR# 清理之前的构建文件rm -rf $OUTPUT_DIR/*# 构建二进制文件GOOS=linux GOARCH=amd64 go build -ldflags "-X main.Version=$VERSION" -o $OUTPUT_DIR/yourapp .# 检查构建是否成功if [ $? -eq 0 ]; thenecho "Build successful! Version: $VERSION"# 压缩输出文件cd $OUTPUT_DIRtar -czvf yourapp-$VERSION.tar.gz yourappecho "Compressed file created: yourapp-$VERSION.tar.gz"elseecho "Build failed!"exit 1fi通过这些步骤,你可以创建一个自定义的Golang打包脚本,以满足你的特定需求。