You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统下Docker WORKDIR含义、位置及自定义问题咨询

Docker中WORKDIR指令的常见疑问解答

1. WORKDIR的具体含义

WORKDIR是Dockerfile的核心指令之一,作用是指定后续所有RUN、CMD、ENTRYPOINT、COPY、ADD等指令的默认工作目录。类比本地操作,就像你打开终端后先执行cd切换到某目录,之后的命令都默认在这个目录下执行,不用每次都写完整绝对路径。

2. WORKDIR的实际指向位置

不管你用的是Windows还是其他宿主机系统,WORKDIR指定的路径都是Docker容器内部的文件系统路径,和宿主机的文件系统完全隔离。你看到的示例/usr/src/my_app_directory是容器内的Linux风格路径(绝大多数官方镜像基于Linux),和你Windows上的C盘、D盘没有任何直接关联。

3. 自定义WORKDIR路径的可行性及实际位置

当然可以自定义WORKDIR路径,完全根据项目需求设置:

  • 支持相对路径:比如先设置WORKDIR /app,再设置WORKDIR src,最终工作目录会变成/app/src
  • 支持绝对路径:直接指定WORKDIR /my_project/workspace这类完整路径

自定义后的路径就是容器内部的对应目录,Docker会自动帮你创建这个目录(如果原本不存在的话),不需要额外用RUN mkdir命令手动创建。

举个直观的例子,以下是一段简单的Dockerfile:

FROM ubuntu:latest
WORKDIR /my_custom_workspace
COPY ./local_files .
RUN touch demo.txt

构建镜像并运行容器后,进入容器执行pwd命令,会显示当前目录为/my_custom_workspace,你复制的本地文件和创建的demo.txt也都在这个目录下。

内容的提问来源于stack exchange,提问作者Numonjon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 03:10:27