目录

Dockerfile文件

四、dockerfile文件

dockerfile是一个用来构建镜像的文件,文本内容包含了一些构建镜像的指令和说明。

基于dockerfile构建镜像可以使用docker build命令,-f参数可以指定具体的dockerfile文件。

/var/folders/kh/3ldp956x6ydcj1tcgfn944400000gn/T/com.yinxiang.Mac/com.yinxiang.Mac/WebKitDnD.VSrbXk/741BA7C0-0E2C-4308-9A00-9E299FCA7ABE.png

ENTRYPOINT和CMD的区别

两者都是容器启动后需要执行的命令

区别:

  • ENTRYPOINT不会被docker run覆盖,会将docker run命令行的参数当作传递给ENTRYPOINT的参数
  • ENTRYPOINT在dockerfile中一般只有一个,若有多个则最后一个生效
  • 当docker run加上–entrypoint时,将覆盖dockerfile中的ENTRYPOINT
  • 一般变参用CMD,定参用ENTRYPOINT

onbuild指令

写在onbuild后的指令在此dockerfile镜像构建的时候不会执行,只有被当作基础镜像(被FROM)时其会在新的dockerfile里执行

ARG指令

其声明变量的作用范围仅限dockerfile内,即只在构建镜像时生效