2016-07-23 79 views
3

我正在根據Jenkins Docker image創建我自己的Dockerfile,僅在映像中添加一些預安裝的軟件包(build-essential等)。在子Dockerfile中使用ARG命令

在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

這是不可能的。該圖像已經建成(使用默認值)。你可以寫一個快速的腳本來建立你自己的jenkins圖像(傳遞參數),然後從中建立你的子圖像。