首页 > 解决方案 > Docker WORKDIR - 在我的机器或容器上?

问题描述

WORKDIRDockerfile 中的关键字指的是什么上下文?它是在我从我正在生产的容器中运行docker build还是在我正在生产的容器内运行的上下文中?

我发现自己经常放入RUN cd && ...我的 docker 文件,并希望有另一种方法,我觉得我错过了一些东西。

标签: dockerdockerfile

解决方案


它在容器内。

用于 Dockerfile 参考站点https://docs.docker.com/engine/reference/builder/#workdir

WORKDIR 指令为 Dockerfile 中任何 RUN、CMD、ENTRYPOINT、COPY 和 ADD 指令设置工作目录。如果 WORKDIR 不存在,即使它没有在任何后续 Dockerfile 指令中使用,它也会被创建。

RUN cd && ...因此,您可以执行以下操作,而不是添加:

WORKDIR /path/to/dir
RUN command

推荐阅读