【问题标题】:I can't locate my host directory, which I attached to Docker我找不到附加到 Docker 的主机目录
【发布时间】:2016-12-05 07:36:07
【问题描述】:

我有一个小问题,我一直在尝试使用 ArangoDB 和 Docker 获取一些持久性数据。我将参数传递给 Docker,它将主机目录附加到 Docker 中的路径。到目前为止一切都很好,但我陷入了这个目录到底在哪里的谜。

1) 这是一个类似于我的示例命令:

docker run -e ARANGO_ROOT_PASSWORD='mypass' -p 80:8529 -d -v myhostfolder:/var/lib/arangodb3 arangodb

所以,问题是我在运行 docker 的主机上的任何地方都找不到 myhostfolder。其中的数据是持久的,我可以访问它,但只能通过 docker 容器。我认为数据在我的主机上的某个地方,我一直在尝试传递几个这样的“相对”文件夹,它们都保留了持久数据,所以我怀疑数据是否在实际的 docker 容器中。

2) 如果我这样做(提供绝对路径)

docker run -e ARANGO_ROOT_PASSWORD='mypass' -p 80:8529 -d -v /home/myhostfolder:/var/lib/arangodb3 arangodb

那么我在定位 /home/myhostfolder 方面没有任何问题。

所以我的问题是,在我的 OS X 10.12 上,示例 1) 中的 myhost 文件夹在哪里?

感谢您的帮助!

【问题讨论】:

  • 当您这样做时,您不是将主机目录安装到容器中吗?当目录不存在时,我不确定这里的行为,但我怀疑它会在主机上创建目录。看到this?还有关于特定操作系统使用的附加说明。

标签: database unix docker arangodb


【解决方案1】:

主机目录可以是绝对路径或名称值。如果您为主机目录提供绝对路径,Docker 将绑定安装到您指定的路径。如果您提供一个名称,Docker 将使用该名称创建一个命名卷。 请参阅https://docs.docker.com/engine/tutorials/dockervolumes/#mount-a-host-directory-as-a-data-volume

在您的情况下,由于 myhostfolder 是一个名称,docker 创建一个命名卷。执行以下列出卷的命令。将显示一个名为 myhostfolder 的卷。

docker volume ls

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-03
    • 2022-12-13
    • 1970-01-01
    • 2019-02-08
    • 2012-08-25
    • 2020-07-08
    • 2018-03-03
    • 1970-01-01
    相关资源
    最近更新 更多