2017-06-14 56 views
1

而不是使用ADD或COPY命令我希望docker鏡像從我的git下載我想要執行的python腳本(aa.py)。 在mygit中只有一個名爲aa.py的文件。如何在dockerfile中使用RUN克隆git

這不起作用:

FROM python:3 

RUN git clone https://github.com/user/mygit.git 

CMD [ "python3", "./aa.py" ] 

錯誤消息:

ERR /usr/local/bin/python: can't open file './aa.py': [Errno 2] No such file or directory 
+0

你會得到什麼錯誤? – kstromeiraos

+0

對不起。我將錯誤消息添加到了我的問題中。 – user3080315

回答

0

問題是aa.py文件是在當前工作目錄

變化Dockerfile內容

FROM python:3 
RUN git clone https://github.com/user/mygit.git 
RUN cd mygit 
CMD [ "python3", "./aa.py" ] 

OR

FROM python:3 
RUN git clone https://github.com/user/mygit.git 
CMD [ "python3", "mygit/aa.py" ] 
+0

謝謝!第二個例子工作。 – user3080315

1

您的問題是CMD指令無法找到文件aa.py

你必須指定完整路徑到你的aa.py其中,如果你沒有改變工作目錄將是/project_name/aa.py。這裏

+0

謝謝!這工作。 – user3080315

2

最好的解決辦法是使用WORKDIR改變碼頭工人的工作目錄。所以你的Dockerfile應該是這樣的:

FROM python:3 
RUN git clone https://github.com/user/mygit.git 
WORKDIR mygit 
CMD [ "python3", "./aa.py" ]