在子Dockerfile中使用ARG命令

时间:2016-07-23 12:25:14

标签: jenkins docker dockerfile

我正在基于Jenkins Docker image创建自己的Dockerfile,只是在图片中添加一些预安装的软件包(build-essential等等)。

在Jenkins Dockerfile中,他们使用ARG command创建了jenkins用户和群组:请参阅these lines

这是我的Dockerfile

FROM  jenkins
USER  root
RUN   apt-get update && apt-get install -y build-essential
USER  jenkins

但是当我使用以下行构建它以适合我的jenkins主机用户时:

docker build --tag my-jenkins \
    --build-arg user=jenkins \
    --build-arg group=jenkins \
    --build-arg uid=$(id -u jenkins) \
    --build-arg gid=$(id -g jenkins) \
    .

我收到了这个错误:

One or more build-args [gid group uid user] were not consumed, failing build.

有办法做到这一点还是不可能?

1 个答案:

答案 0 :(得分:1)

这是不可能的。图像已经构建(使用默认值)。您可以编写一个快速脚本来构建自己的jenkins图像(传递args),然后从中构建子图像。