从Mac OSX中的docker hub下载Docker镜像后,它们位于何处。例如,如果我运行如下命令:
docker run hello-world
下载图像并运行容器但是我的系统上的图像在哪里?
注意:highlight
这个问题的答案主要与linux机器有关。 Mac OS X的答案是考虑到boot2docker与docker安装一起使用,但对我来说并非如此。
答案 0 :(得分:85)
如果你使用的是Docker for Mac,那么位置也会有所不同,即:
/Users/MyUserName/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2
答案 1 :(得分:48)
通过从Docker工具栏图标中选择Preferences-> Advanced菜单(在Docker-CE v17中工作),也可以获得磁盘映像的位置(如docs中所述):
更新:正如@udondan提到的Docker现在有一个单独的“磁盘”。 “首选项”中的选项卡,其中显示磁盘映像位置:
答案 2 :(得分:27)
对于使用Docker工具箱(使用docker-machine)的人,Mac OS X上有关boot2docker的答案无效。 docker-machine VM被称为&#34;默认&#34;它存在于/Users/<username>/.docker/machine/machines/default/目录中。
注意:我也在这个问题上添加了这个答案:Where are Docker images stored on the host machine?但我也在这里回答,以便更容易找到专门寻找Mac OS X和新版本的人的答案Docker
答案 3 :(得分:8)
详细说明如何打开这些文件夹,以防您获得现在的目录,因为它是挂载在虚拟主机上而不是Mac常规卷
screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
ls -ltrh /var/lib/docker/volumes
来自here
的回答如果您想从Mac控制音量,可以在创建容器时对其进行映射
docker run -it --name voltest2 -v /path/to_mac/directory/MyHostDir:/mydata centos:latest /bin/bash
会将容器上的目录mydata
映射到Mac上的目录/path/to_mac/directory/MyHostDir
答案 4 :(得分:6)
Docker镜像在Docker Desktop上存储在Mac上的其他位置,与在其他Linux系统上存储的位置不同。
摘自Docker文档(从https://docs.docker.com/docker-for-mac/space/于2020年3月25日收回)
Docker Desktop将Linux容器和映像存储在一个大型的 Mac文件系统中的“磁盘映像”文件。这与Docker不同 在Linux上,通常将容器和图像存储在 / var / lib / docker目录。
在装有MacOS 10.14.6 Mojave的Mac上,运行Docker版本19.03.8,可以在以下位置找到单个大文件:
~/Library/Containers/com.docker.docker/Data/vms/0/data/Docker.raw
答案 5 :(得分:1)
在我的情况下(Mavericks / docker brew安装/图像名称:默认)位于
下/Users/<Username>/.docker/machine/machines/.
(你必须使用终端而不是查找器才能看到它。)
ls -lah /Users/Mitsos/.docker/machine/machines/
total 0
drwx------ 3 Mitsos staff 102B Dec 8 19:03 .
drwxr-xr-x 5 Mitsos staff 170B Sep 22 13:52 ..
drwx------ 13 Mitsos staff 442B Dec 8 19:04 default
答案 6 :(得分:1)
这个答案与MAC的“boot2Docker”版本无关。这里我有版本17.12.0-ce-mac55,你必须记住Docker仍然在VM中运行,系统路径是相对于VM而不是Mac Osx系统。 正如它所说的所有内容都包含在VM文件中:
/Users/MyUserName/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2
尝试使用此卷选项运行Alpine映像,并使用ls命令列出VM主机:
docker run --rm -it -v /:/ vm-root alpine:edge ls -l / vm-root
在此之后尝试:
docker run --rm -it -v /:/ vm-root alpine:edge ls -l / VM-根的/ var / lib中/搬运工
现在,您可以列出来自WM主机的docker文件夹
答案 7 :(得分:1)
答案 8 :(得分:1)
在运行Mac OS 10.15.4 Catalina的Mac上,运行Docker 19.03.8 / Docker Desktop 2.3.0.2(45183)的Docker.raw位于此处:
~/Library/Containers/com.docker.docker/Data/vms/0/Docker.raw
答案 9 :(得分:0)
就我而言,我想找到docker映像并将其复制到另一个位置。
使用docker save
将一个或多个图像保存到tar存档(默认情况下流式传输到STDOUT)
链接:https://docs.docker.com/engine/reference/commandline/save/
答案 10 :(得分:0)
此here上有一些信息。您可以通过运行
来检查位置docker info| grep "Docker Root Dir"