1.为Windows 10安装了Docker桌面
1.使用powershell运行docker容器(ubuntu)
1.现在,我想浏览到/var/lib/docker --〉想浏览到overlay 2来检查层../diff文件夹等。
1.如果我访问/var/lib/docker文件夹- powershell会抱怨这个文件夹不存在。
其他信息:我已经 checkout 了Map到Docker桌面的磁盘映像位置。它是一个vhdx文件。我无法使用Oracle虚拟机打开它-它说它不是支持的版本文件。我尝试在Hyper V管理器中打开,VM被列出:坞站桌面虚拟机。
- 但我的目标是执行SSH并浏览/var/lib/docker文件夹。
3条答案
按热度按时间tp5buhyn1#
(This是WSL 2的情况。对于类似问题,它是my answer)
Docker映像由Docker自己的VM管理。“docker info”提供的路径/var/lib/docker相对于Docker的主机文件系统,而不是容器的文件系统。它们的挂载点不同。您可以通过以下任一方式查看Docker的主机文件系统:
1.您可以将主机文件系统挂载到容器目录。例如,
这个命令在Ubuntu docker镜像中运行一个shell,将docker的文件系统挂载到/data目录。在那里你可以在/data下找到一个完整的文件系统,包括./var/lib/docker。如果你愿意,你可以在shell提示符下“chroot /data”以获得更好的视图。
1.当在WSL 2中为您的发行版启用了Docker时,您总是可以在您的发行版/mnt目录中检查您的容器。Docker已经为您装载了所有内容。
1.如果您经验丰富,可以在Windows目录中找到所有数据的虚拟磁盘的实际位置。
或者可能只是为了好玩:
不幸的是,我还没有尝试深入研究它们。
wd2eg0qa2#
如This page of docker forums所述,你可以用shell运行纯debiandocker图像,并将其名称空间改为docker host。
您需要运行的终端命令是:
据我所知,在运行debian映像作为终端(-it选项)后,您需要调用带有指定参数的命令nsenter来将名称空间更改为主机。在此之后,您的容器将变为Docker host,您可以查看它的所有文件。
在这个命令之后,你可以通过调用简单地访问Docker图像:
7dl7o3gd3#
在你的windows文件资源管理器的左窗格中,你可以找到你所有的计算机驱动器。如果你已经安装了WSL(当你安装你的Docker时),你会看到这个Linux pinguin图标。
选择docker-desktop-data目录,并在其中选择data目录。在数据目录中,您将找到docker目录和
docker run ... -v
命令生成的卷。快捷方式为:
cd \\wsl.localhost\docker-desktop-data\data