在CentOS上打包Golang项目时遇到依赖问题,可按以下步骤解决:
go mod init [模块名]
,生成go.mod
文件。go get -u
安装缺失依赖,或 go mod tidy
自动整理依赖。libcurl
),用yum/dnf
安装对应开发包,例如:sudo yum install libcurl-devel
go mod why [包名]
分析依赖冲突原因。replace
指令替换依赖版本(在go.mod
中),或升级/降级依赖包。FROM centos:7
RUN yum install -y golang
WORKDIR /app
COPY . .
RUN go mod tidy && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o app
rpmbuild
工具将二进制文件和依赖打包为RPM,确保部署时依赖完整。关键命令总结:
go mod init
、go mod tidy
、go get -u
。yum/dnf install
。CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
。