将参数传递给父Dockerfile

前端之家收集整理的这篇文章主要介绍了将参数传递给父Dockerfile前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

给出以下子Dockerfile

FROM jenkins

USER ${user}

RUN echo "${user}"

来自父母Dockerfile的摘录

FROM openjdk:8-jdk

ARG user=jenkins
ARG group=jenkins
ARG uid=1000
ARG gid=1000
最佳答案
Build arguments不会保留在图像中,因此它们在父图像的构建中不可用.

Unlike an ARG instruction,ENV values are always persisted in the built image.

ARG variables are not persisted into the built image as ENV variables are.

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

ARG IMAGE_USER=jenkins
ENV IMAGE_USER=$IMAGE_USER

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

猜你在找的Docker相关文章