目录
  • 1. goland配置Dockerfile
  • 2. goland构建项目
  • 3. Dockerfile执行
  • 总结

1. goland配置Dockerfile

项目中新建Dockerfile文件

goland把go项目打包进docker镜像的全过程记录

配置Dockerfile

goland把go项目打包进docker镜像的全过程记录

在项目中新建Dockerfile 文件,内容如下

FROM golang:alpine

ENV GO111MODULE=on \

    CGO_ENABLE=0 \

    GOOS=linux \

    GOARCH=amd64 \

    GOPROXY="https://goproxy.cn,direct"

WORKDIR /goweb
COPY out/* ./app

EXPOSE 8088
CMD ["/goweb/app"]

第一行表示基于golang的环境镜像构建自己的docker

第二行配置go的环境

WORKDIR 表示项目放入容器中的什么地方,就是工作目录,WORKDIR指定的工作目录具有传递性,很多个WORKDIR的命令是关系的,比如首次指定工作目录是 /goweb, 那么下边下面那一行的COPY命令的 ./app 就是在/goweb下进行的相对路径

  • COPY 表示把本地的文件复制到容器内
  • EXPOSE 表示暴露什么端口,这个好像仅仅是给人看的,没啥用
  • CMD 表示基于镜像构建容器的时候,执行什么命令

2. goland构建项目

编辑构建参数

goland把go项目打包进docker镜像的全过程记录

这样构建之后的产物就会在out文件夹里边,然后Dockerfile去out文件夹COPY产物,复制到docker容器内

3. Dockerfile执行

goland把go项目打包进docker镜像的全过程记录

点击这里的运行就可以

goland把go项目打包进docker镜像的全过程记录

登录Linux可以看到我们的docker

goland把go项目打包进docker镜像的全过程记录

goland把go项目打包进docker镜像的全过程记录

总结

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。