如何在dockerfile中使用RUN克隆git
我不希望使用ADD或COPY命令,而是希望docker镜像从我的git下载我想执行的python脚本(aa.py)。 在mygit中只有一个名为aa.py的文件。
这不起作用:
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
这里的问题是aa.py
文件在你当前的工作目录中
将Dockerfile
内容更改为
FROM python:3 RUN git clone https://github.com/user/mygit.git RUN cd mygit CMD [ "python3", "./aa.py" ]
要么
FROM python:3 RUN git clone https://github.com/user/mygit.git CMD [ "python3", "mygit/aa.py" ]
最好的解决scheme是使用WORKDIR
更改docker工作目录。 所以你的Dockerfile应该如下所示:
FROM python:3 RUN git clone https://github.com/user/mygit.git WORKDIR mygit CMD [ "python3", "./aa.py" ]
你的问题是, CMD
指令找不到文件aa.py
你必须指定完整的path到你的aa.py
里面,如果你没有改变工作目录将是/project_name/aa.py
。
- 如何从docker-compose链接到Amazon RDS
- 使用共享的跑步者来访问gitlabregistry
- 如何在数字海洋液滴上configuration浮动IP地址的docker?
- 如何运行与docker的jekyll撰写获取 – 服务的不支持的configuration选项:“网站”
- Docker&Rails | bundler:找不到命令:rails
- Docker节点状态在重新启动之后从“就绪”变为“closures”,或者甚至在Mac睡眠时,我再次login
- Redis Docker – 无法从C#客户端连接
- 如何更改docker默认的IP绑定?
- docker容器作为打印机服务器,打印机只安装在容器中