将参数传递给父Dockerfile

Chr*_*ipp 10 arguments docker dockerfile

有没有办法使用父docker镜像中定义的参数?

给出以下子Dockerfile

FROM jenkins

USER ${user}

RUN echo "${user}"
Run Code Online (Sandbox Code Playgroud)

摘自父Dockerfile

FROM openjdk:8-jdk

ARG user=jenkins
ARG group=jenkins
ARG uid=1000
ARG gid=1000
Run Code Online (Sandbox Code Playgroud)

Mat*_*att 7

构建参数不会保留在图像中,因此它们在构建FROM父图像时将不可用.

与ARG指令不同,ENV值始终保留在构建的图像中.

ARG变量不会像ENV变量那样持久保存到构建的图像中.

参数可以通过将它们存储在某个地方来保持,最简单的地方是在环境变量中.

ARG IMAGE_USER=jenkins
ENV IMAGE_USER=$IMAGE_USER
Run Code Online (Sandbox Code Playgroud)

RUN然后子图像中的所有步骤都可以访问IMAGE_USER其环境.