尝试将另一个卷安装到 clickhouse docker 容器时出错

Error when attempting to mount another volume to clickhouse docker container

我一直在尝试使用 clickhouse 将卷安装到 docker 容器,特别是在 docker 桌面上 windows 10. 遵循文档:

https://hub.docker.com/r/yandex/clickhouse-server/

我在我的 $HOME 路径中的 C 驱动器上设置 docker 容器并将数据加载到等中没有问题。我现在想挂载一个自定义卷,我的 E/ 驱动器是随着数据库将继续增长而变大。当我 运行 this:

时出现错误
docker run -d -p 8123:8123 --name clickhousedb --ulimit nofile=262144:262144 --volume=/E:/ch/clickhousedb:/var/lib/clickhouse yandex/clickhouse-server

特别是这个:

Error response from daemon: invalid mode: /var/lib/clickhouse.

任何想法可能是什么问题?

似乎是权限问题。能够访问E盘根目录:

docker run -d -p 8134:8123 --name clickhousedb --ulimit nofile=262144:262144 --volume=E:/:/var/lib/clickhouse yandex/clickhouse-server

问题是“--volume=”之后的“/”字符,它告诉 docker CLI 将字符串拆分为:

  • 空字符串(挂载目录)
  • E:/ch/clickhousedb(容器内挂载点)
  • /var/lib/clickhouse(挂载方式)

Docker 认为“/var/lib/clickhouse”是卷安装的模式,因此出现错误消息。