建站优化

当前位置:

如何将golang程序的镜像压缩到4MB么 ,golang解压缩

浏览量:111次

如何将golang程序的镜像压缩到4MB么 ,golang解压缩

如何将golang程序的镜像压缩到4MB么?

最初go程序的大小是17MB。

首先我使用upx将它压缩到4MB。

这是一个压缩二进制的工具。

具体命令:

GOOS=linuxGOARCH=amd64gobuild-ldflags"-a-s-w"//这里-ldflags去掉些符号。upx-9-kviot-worker//-k是保留备份的意思,viot-worker是二进制文件的名称,替换成你们的就可以了。现在是4MB,但是还没有打包成镜像

由于之前看过其他大佬的文章,所以我精心挑选一个镜像它叫iron/base,只有一个7MB的基础镜像。

然后我通过以下Dockerfile将go程序打包成镜像。简化了些跟文章无关的内容。

FROMiron/baseWORKDIR/rootCOPYviot-worker/rootRUNchmodxviot-workerENTRYPOINT["./viot-worker"]

打包镜像的命令

dockerbuild-tdemo/viot-worker:3.这个时候整个镜像到了15MB

然后我出动了镜像压缩神器docker-slim。

执行了下面命令。

docker-slimbuilddemo/viot-worker:3--http-probe=false

中途出现红色字体,点击回车就好。

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【779898168@qq.com】,我们在确认后,会立即删除,保证您的版权。