如何在Docker容器及Windows 11 Docker Desktop中查找源码文件路径
在Windows 11 Docker Desktop中查找容器源码文件路径的方法
1. 查看容器内部的源码路径
如果不确定源码在容器内的位置,直接进入容器终端定位:
- 先通过
docker ps获取目标容器的ID或名称 - 执行命令进入容器:
docker exec -it <容器ID/名称> bash(如果容器没有bash,改用sh) - 在容器内用查找命令定位源码,比如:
- 已知文件名:
find / -name "example.py" 2>/dev/null(2>/dev/null过滤权限报错) - 按常见项目目录排查:
ls /app(Node、Python等项目常用根目录)
- 已知文件名:
2. 查找本地挂载的源码路径(使用绑定挂载/卷时)
如果源码是从本地目录挂载到容器的,查看挂载映射:
- 执行
docker inspect <容器ID/名称>,在输出的Mounts字段中,Source对应Windows本地的路径,Destination是容器内的路径 - 快速查看所有容器挂载:
docker ps -a --format "{{.Names}}: {{.Mounts}}" - 若使用Docker Compose,直接查看
docker-compose.yml中的volumes配置段,里面会明确标注本地与容器的路径映射
3. 访问WSL2后端中容器的原生文件系统(无本地挂载时)
Windows 11下Docker默认使用WSL2后端,容器自身的文件系统存储在WSL2镜像中:
- 优先用
docker cp命令将容器内的源码复制到本地编辑:docker cp <容器ID/名称>:<容器内源码路径> C:\Users\你的用户名\目标文件夹 - 若要直接访问WSL2内的容器文件,打开WSL2终端(比如Ubuntu),路径为
/var/lib/docker/overlay2/,需结合docker inspect输出的GraphDriver.Data.MergedDir字段定位具体层目录
内容的提问来源于stack exchange,提问作者Natamongkol
相关产品推荐
相关产品推荐

