当我们在 Windows 中使用 docker 镜像和容器时,它存储在哪里?

Posted

技术标签:

【中文标题】当我们在 Windows 中使用 docker 镜像和容器时,它存储在哪里?【英文标题】:Where are docker images and containers stored when we use it with Windows? 【发布时间】:2015-08-23 18:53:07 【问题描述】:

注意:我对 Windows 和 Docker 都非常陌生

我一直在使用的教程说,如果我们使用的是 Linux,它们在 /var/lib/docker/containers 下,但我似乎无法在我的 Windows 机器上找到它。

谢谢!

【问题讨论】:

看这里***.com/questions/19335444/… 这能回答你的问题吗? How do I assign a port mapping to an existing Docker container? 【参考方案1】:

Windows 10 周年更新可能会改变情况。我从这里 (https://master.dockerproject.org/windows/amd64/docker-1.13.0-dev.zip) 的源代码安装了 Docker,如下所述:

https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_10

Docker 将所有的图像放在这个文件夹中:

C:\ProgramData\docker\windowsfilter

以及此文件夹中的所有容器:

C:\ProgramData\docker\containers

一个简单的检查方法是执行这个:

docker info

它应该会告诉您文件的存储位置:

Containers: 2
 Running: 1
 Paused: 0
 Stopped: 1
Images: 10
Server Version: 1.13.0-dev
Storage Driver: windowsfilter
 Windows:
...
Docker Root Dir: C:\ProgramData\docker
Debug Mode (client): false
Debug Mode (server): false
...

【讨论】:

@Johny。这个位置对我来说是空的。 @NeerajChand 如果你运行docker info,你会看到什么? 这仅适用于 windows 容器【参考方案2】:

输入 docker-machine with

docker-machine ssh 

在那里你应该找到你的容器。

sudo ls /var/lib/docker/containers

【讨论】:

请注意,boot2docker 现在已被弃用。在新版本的 docker 中,你可以做同样的事情,但用 docker-machine ssh 代替。 输入给定的命令后,我得到了一些加密文本。我怎么知道哪些是图像? @Shreyas 这些长字符串实际上是容器配置目录的名称。【参考方案3】:

在查看 *** 和 Google 上的一些帖子后。我找到了这个目录:

C:\ProgramData\Microsoft\Windows\Hyper-V

在这里您可以使用虚拟机进行配置

C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines

另一个重要的事情是图像是由 Hyper-V 虚拟化的,所以信息应该存储在这里。

C:\Users\Public\Documents\Hyper-V\Virtual hard disks

【讨论】:

【参考方案4】:

2020 年 WSL2 更新

如果您将它与 WSL2 一起使用,docker 图像将保存在您的 wsl drive 中,可在 \\wsl$\ 上使用此 github issue:

Windows\\wsl$\docker-desktop-data\mnt\wsl\docker-desktop-data\data\docker\volumes Linuxsudo ls /mnt/wsl/docker-desktop-data/data/docker/volumes

【讨论】:

【参考方案5】:

使用 docker toolbox 安装在 windows 上的 Docker(使用 virtual box 代替 hyper-v) 一个 VM 创建于 C:\Users\YOURUSERNAME\.docker\machine\machines 名称为 default,因此您可以在默认文件夹中找到所有 VM 文件。

您可以使用连接此虚拟机

docker-machine ssh

你可以在这个路径下找到拉取的镜像和容器(有时你可能需要使用 sudo)

/var/lib/docker

【讨论】:

以上是关于当我们在 Windows 中使用 docker 镜像和容器时,它存储在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

当我们在 Windows 中使用 docker 镜像和容器时,它存储在哪里?

docker--镜像操作

在Windows上弄一个redis的docker容器

如何用Gradle创建Docker镜像

创建属于自己的docker镜像

docker--Dockerfile