Ant*_*hez 13 docker dockerfile docker-compose docker-machine
我遇到的错误是,我想在 Docker 机器中执行“更改目录”命令,但每次在 Dockerfile 中执行 RUN 指令时,它都会删除实际容器(中间容器)。
Dockerfile
当我从上面执行 Dockerfile 时会发生这种情况
我怎样才能阻止 Docker 这样做呢?
Dockerfile 和RUN(容器内)的当前路径不同。
每个RUN命令都从 Dockerfile 路径(例如“/”)开始。
当你这样做时RUN cd /app,“内部路径”会改变,但“Dockerfile 路径”不会改变。下一个RUN命令将再次在“/”处运行。
要更改“Dockerfile 路径”,请使用WORKDIR(请参阅参考资料),例如WORKDIR /opt/firefox。
另一种方法是链接执行的RUN命令,正如 EvgeniySharapov 指出的那样:RUN cd opt; ls; cd firefox; ls
在多行上:
RUN cd opt; \
ls; \
cd firefox; \
ls
Run Code Online (Sandbox Code Playgroud)
(澄清一下:Docker 删除中间容器并不重要,这不是本例中的问题。)
| 归档时间: |
|
| 查看次数: |
13689 次 |
| 最近记录: |