Dockerfile参考(14) – WORKDIR设置RUN CMD ENTRYPOINT等指令的工作目录

格式:

  1. WORKDIR /path/to/workdir

WORKDIR指令设置Dockerfile中的任何RUN, CMD, ENTRYPOINT, COPY和ADD指令的工作目录。如果WORKDIR指定的目录不存在,即使随后的指令没有用到这个目录,都会创建。
单个Dockerfile可以使用多次WORKDIR。如果提供一个相对路径,当前的工作目录将与上个WORKDIR指令相关,如:

  1. WORKDIR /a
  2. WORKDIR b
  3. WORKDIR c
  4. RUN pwd

pwd命令的输出为/a/b/c。
WORKDIR可以解析之前由ENV设置的环境变量。如:

  1. ENV DIRPATH /path
  2. WORKDIR $DIRPATH/$DIRNAME
  3. RUN pwd

pwd命令输出为/path/$DIRNAME。