Go项目Docker部署

本文介绍了如何在Go项目中进行跨平台编译,生成Linux环境的可执行文件,然后将其部署到Docker容器中。详细步骤包括配置goenv、编写Dockerfile、打包镜像以及运行容器。
摘要由CSDN通过智能技术生成

docker的安装就不介绍了,直接从Go项目部署来介绍
由于Go支持交叉编译,可以根据自己不同的环境要求,编译出不同环境的可执行文件。
在IDE中命令窗口执行以下命令,可以指定编译打包后的可执行文件为linux环境

go env -w GOOS=linux GOARCH=amd64

设置完指定的配置后,执行一下命令进行打包

// 设置打包后的别名为app
 go build -o app main.go

将打包好的linux环境的可执行文件上传至服务器
将Dockerfile也一同上传至同级目录,Dockerfile如下:

FROM alpine:3.12
RUN mkdir "/app"
WORKDIR "/app"
//将app二进制文件复制到容器中
COPY app /app/app
//由于该项目需要读取同级目录下的配置文件,所以一同将配置文件一同上传至容器中
COPY config.yaml /app/config.yaml
//给容器中的新建文件夹进行授权,否则可能会报无操作权限
RUN chmod +x /app/app
//执行二进制文件
ENTRYPOINT ["./app"]

接下来是进入服务器当前文件路径下,执行一下命令进行镜像打包

docker build -t goImage .

镜像制作好后,就可以根据创建好的镜像运行容器了,最后执行一下命令

docker run -d --net=host --restart=always -p 8080:8080 --name go -itd goImage

goLand配置环境参数

GOPROXY=https://goproxy.cn,direct;GOSUMDB=off;GONOSUMDB=*;GO111MODULE=on
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值