使用Dockerfile定制镜像
- Dockerfile必须在应用的根目录下
- 指令不区分大小写
- 新建层的指令:from、run、copy
- 新增元数据的指令:expose(暴露端口)、workdir、env、entrypoint(入口点)
- 第一行必须是FROM img - 基础镜像层
- LABEL指定标签,key value形式
- RUN执行命令
- shell 格式:RUN <命令>,就像直接执行在命令行中一样
- exec格式:RUN [“可执行文件”,“参数1”,“参数2”]
- 每执行一次RUN就会创建一层镜像
构建和发布镜像
- 构建:
- docker build -t <name:tag> .
- 必须在当前目录中运行build构建镜像
- -t:打标签, -f:指定Dockerfile
- 可以通过 --squash合并镜像层(解决层太多的问题,但层无法共享)
- 可以直接用Git repo进行构建
- 发布:推送到Docker Hub
- docker login
- docker push username/img:tag
参考文献1:https://blog.youkuaiyun.com/weixin_43142797/article/details/105895167
参考文献2:https://blog.youkuaiyun.com/len_yue_mo_fu/article/details/80189035