![](/img/trans.png)
[英]How to connect IntelliJ Docker Integration to Docker Desktop (for Windows 10)
[英]How to access /var/lib/docker in windows 10 docker desktop?
其他信息:我已经检查了映射到 docker 桌面的磁盘映像位置。 它是一个 vhdx 文件。 我无法使用 Oracle 虚拟框打开它 - 它说它不是受支持的版本文件。 我尝试在 Hyper V 管理器中打开,VM 被列出:DockerDesktopVM。
(这是针对 WSL2 的情况。这是我对类似问题的回答)
Docker 镜像由 Docker 自己的 VM 管理。 “docker info”给出的路径 /var/lib/docker 是相对于 docker 的主机文件系统,而不是你的容器的文件系统。 他们的挂载点是不同的。 您可以通过以下任一方式查看 docker 的主机文件系统:
您可以将主机文件系统挂载到容器目录。 如,
docker run -v /:/data -it ubuntu /bin/bash
此命令在 Ubuntu docker 镜像中运行一个 shell,将 docker 的文件系统挂载到 /data 目录。 在那里你可以在 /data 下找到一个完整的文件系统,包括 ./var/lib/docker。 如果需要,您可以在 shell 提示中“chroot /data”以获得更好的查看效果。
在 WSL2 中为您的发行版启用 docker 后,您始终可以在您的发行版 /mnt 目录中检查您的容器。 Docker 已经为你安装了一切。
/mnt/wsl/docker-desktop-data/data/docker
如果您足够老练,您可能会在您的 Windows 目录中找到所有数据的虚拟磁盘的实际位置。
C:\\Users\\your_name\\AppData\\Local\\Docker\\wsl\\data\\
或者可能只是为了好玩:
\\\\wsl$\\Ubuntu\\mnt\\wsl\\docker-desktop-data\\data\\docker
不幸的是,我还没有尝试深入研究它们。
如docker 论坛的此页面所述,您可以使用 shell 运行普通的debian docker 映像并将其名称空间更改为docker host 。
您需要运行的终端命令是:
>> docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -i sh
据我了解,在将 debian 映像作为终端( -it选项)运行后,您需要使用指定的参数调用命令nsenter以将命名空间更改为主机。 在此之后,您的容器成为Docker 主机,您可以查看它的所有文件。
执行此命令后,您只需调用以下命令即可访问 docker 图像:
>> cd ls /var/lib/docker/
在 windows 文件资源管理器的左窗格中,您可以找到所有计算机驱动器。 如果您已经安装了 WSL(当您设置 Docker 时),您将看到这个 Linux pinguin 图标。
Select docker -desktop-data目录及其内部的数据目录。 在数据目录中,您将找到docker目录和docker run... -v
命令生成的卷。
快捷方式是: cd \\wsl.localhost\docker-desktop-data\data
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.