简单将golang部署到Docker环境中

使用的是Windows环境,将golang部署到Docker环境中

Windows中的操作

在windows中主要是将golang交叉编译成linux下运行的文件,第一步设置编译后的运行环境的配置,在需要编译的项目根目录下打开cmd,在命令行中依次输入

SET CGO_ENABLED=0 
SET GOOS=linum
SET GOARCH=amd64
复制代码

执行完上述操作然后切换到main.go文件所在的位置执行go build 编译出的文件就能在linux下执行

Docker中的操作

由于使用的是Windows系统,关于Windows中安装Docker请自行百度,安装完成后,在docker中cd到上述生成的二进制文件的目录位置,执行

cp 源文件 目标文件件

例如:
cp account /test
复制代码

如果golang中有配置文件需要一并copy过去,注意代码中配置文件的位置,小编在此吃了不少亏.一般配置文件都是命令行中配置.以下操作均在test文件夹下. 然后就是编写Dockerfile了.有了二进制文件我们就能创建一个轻量的镜像,而不用使用golang的镜像.这里使用的是scratch.示例:

FROM scratch
#将配置文件一起拷贝到该目录下
COPY . /

EXPOSE 50052

ENTRYPOINT ["./account"]
复制代码

有了Dockerfile文件,在docker中运行

docker build -t test-image .
复制代码

执行结果如下:

执行完后查看镜像:

docker images
复制代码

看到生成test-image,表示生成镜像已经完成了.也可以看到生成的镜像只有14.55m,比golang镜像几百兆小了几十倍.

最后就是运行容器:

docker run --name=test-container -p 50052:50052 test-image
复制代码

没出错就能看到golang项目运行成功了.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值