我如何使用 Dockerfile RUN 文件夹主目录中的所有命令?
例如,在 Docker 中,我必须在运行第二个命令之前将 CD 放入文件夹中:
RUN cd /var/sites/demo && virtualenv env --system-site-packages
RUN cd /var/sites/demo && pip install -r requirements.txt
有没有办法删除 cd/var/sites/demo 并让每个命令从该位置运行?
请您参考如下方法:
通过将 WORKDIR 设置为适当的路径:
The WORKDIR instruction sets the working directory for any RUN, CMD, ENTRYPOINT, COPY and ADD instructions that follow it in the Dockerfile.
所以你的文件应该有:
WORKDIR /var/sites/demo
在您的 RUN 命令之前。
