在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 ]; then
echo "Build successful!"
else
echo "Build failed!"
exit 1
fi
使用以下命令赋予脚本执行权限:
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 ]; then
echo "Build successful! Version: $VERSION"
else
echo "Build failed!"
exit 1
fi
#!/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 ]; then
echo "Build successful! Version: $VERSION"
# 压缩输出文件
cd $OUTPUT_DIR
tar -czvf yourapp-$VERSION.tar.gz yourapp
echo "Compressed file created: yourapp-$VERSION.tar.gz"
else
echo "Build failed!"
exit 1
fi
通过这些步骤,你可以创建一个自定义的Golang打包脚本,以满足你的特定需求。