fra*_*ker 6 docker boot2docker
在 macOS 上使用 docker 机器时需要知道 docker 卷位于何处。安装使用的是 boot2docker,所以虚拟机在后面工作。
例子:
docker volume create test-data
Run Code Online (Sandbox Code Playgroud)
docker inspect 显示路径,但我在哪里可以找到特定的(物理)位置?
macOS使用虚拟机,它与 linux 不同,您可以从 /var/lib/docker/volumes 访问卷。对于 macOS,您应该连接到 VM 以查找您的卷。
如果您在 Docker 中使用持久数据卷,并且希望通过命令行访问它们。
如果您的 docker 主机是 Linux,那不是问题;您可以通过/var/lib/docker/volumes路径找到 Docker 卷。
但是,当您使用 Docker for Mac 时,情况并非如此。尝试从 MacOS 终端 cd /var/lib/docker/volumes ,您将一无所获。
你看,你的 Mac 机器不是真正的 Docker 主机。Docker for Mac 运行一个虚拟机并将它隐藏起来,让事情变得简单。
因此,要访问 Docker for Mac 创建的持久卷,您需要连接到该 VM。
为了实现这一点,我们需要在 Mac 上使用串行终端。有一个名为“screen”的终端应用程序可以帮助我们。
我们需要通过执行以下命令来“筛选”Docker 驱动程序:
屏幕 ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
利润,你到了!
如果您需要将文件从 MacOS 主机传输到 Docker 主机,您可以参考文件共享
希望这对你有帮助!
它位于虚拟机内,不能从主机直接访问。
像这样的调试级命令docker volume inspect会给你一个路径,但它们实际上只用于紧急调试而不是日常使用。如果你有办法在 VM 中获得一个 shell,你可以看到那个路径,但你真的不应该直接访问那里的文件,你不应该经常访问docker inspect任何东西。
| 归档时间: |
|
| 查看次数: |
6177 次 |
| 最近记录: |