分享
014--docker编译go项目最小化
糖纸疯了 · · 1768 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
1、参考网址
2、镜像打包
1、使用golang打出来的包太大了,非常占用内存300M+
FROM golang:latest
MAINTAINER Razil "niyuelin1990@163.com"
ENV GOPATH /apps/enzogo/
WORKDIR $GOPATH/src/enzoism/helloEnzo
ADD . $GOPATH/src/enzoism/helloEnzo
EXPOSE 6064
ENTRYPOINT ["./helloEnzo"]
2、使用scratch进行打包操作只有30M+
FROM scratch
MAINTAINER enzo "https://github.com/enzoism"
ENV GOPATH /apps/enzogo/
WORKDIR /apps/enzogo/src/enzoism/helloEnzo
COPY . /apps/enzogo/src/enzoism/helloEnzo
ADD main /
ENTRYPOINT ["/main"]
3、最小化包的打包流程
- 1、创建项目:bee new lirong
- 2、进行静态编译:CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main .
- 3、编译之后会生成一个main可执行文件
- 4、编写Dockerfile文件(环境变量+拷贝文件+解压文件+执行脚本)
FROM scratch
MAINTAINER enzo "https://github.com/enzoism"
ENV GOPATH /apps/enzogo/
WORKDIR /apps/enzogo/src/enzoism/helloEnzo
COPY . /apps/enzogo/src/enzoism/helloEnzo
ADD main /
ENTRYPOINT ["/main"]
- 5、打包镜像
docker build -t lirong:1.0.0 .
docker run -id -p 8085:8080 --name lirong lirong:1.0.0
- 6、访问网址即可
- 7、失败图片展示
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信1768 次点击
上一篇:golang-开山篇
下一篇:Go语言6-接口、反射
0 回复
暂无回复
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
1、参考网址
2、镜像打包
1、使用golang打出来的包太大了,非常占用内存300M+
FROM golang:latest
MAINTAINER Razil "niyuelin1990@163.com"
ENV GOPATH /apps/enzogo/
WORKDIR $GOPATH/src/enzoism/helloEnzo
ADD . $GOPATH/src/enzoism/helloEnzo
EXPOSE 6064
ENTRYPOINT ["./helloEnzo"]
2、使用scratch进行打包操作只有30M+
FROM scratch
MAINTAINER enzo "https://github.com/enzoism"
ENV GOPATH /apps/enzogo/
WORKDIR /apps/enzogo/src/enzoism/helloEnzo
COPY . /apps/enzogo/src/enzoism/helloEnzo
ADD main /
ENTRYPOINT ["/main"]
3、最小化包的打包流程
- 1、创建项目:bee new lirong
- 2、进行静态编译:CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main .
- 3、编译之后会生成一个main可执行文件
- 4、编写Dockerfile文件(环境变量+拷贝文件+解压文件+执行脚本)
FROM scratch
MAINTAINER enzo "https://github.com/enzoism"
ENV GOPATH /apps/enzogo/
WORKDIR /apps/enzogo/src/enzoism/helloEnzo
COPY . /apps/enzogo/src/enzoism/helloEnzo
ADD main /
ENTRYPOINT ["/main"]
- 5、打包镜像
docker build -t lirong:1.0.0 .
docker run -id -p 8085:8080 --name lirong lirong:1.0.0
- 6、访问网址即可
- 7、失败图片展示