Golang在Ubuntu上的打包流程如下:
安装Go环境
sudo apt update && sudo apt install golang-go go version # 验证安装 初始化项目依赖
go mod init <模块名> # 创建go.mod文件 go mod tidy # 自动管理依赖 编译项目
cd /path/to/project go build -o myapp main.go # 生成可执行文件 可选:压缩可执行文件
sudo apt install upx upx --best myapp # 压缩文件体积 可选:打包为压缩包
tar -czvf myapp.tar.gz myapp # 打包成.tar.gz文件 可选:跨平台编译
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o myapp # 静态链接 可选:Docker打包
FROM golang:alpine AS builder WORKDIR /app COPY . . RUN go mod download && go build -o myapp FROM scratch COPY --from=builder /app/myapp /myapp ENTRYPOINT ["/myapp"] docker build -t myapp . 说明:
CGO_ENABLED=0)可避免依赖库缺失问题,适合无Go环境的服务器。