卷安装阻止在容器中启动

时间:2017-05-29 19:04:05

标签: docker cassandra

我可以在Docker容器中启动Cassandra,但是当我向运行命令添加卷装载时,Cassandra将无法启动并挂起。我正在使用官方最新的Apache Cassandra映像(v 3.10),运行Docker版本17.04.0-ce。

这开始没问题:

docker run -d -P --name=cassandra --net=host cassandra

这挂起:

docker run -P -v /home/joe/apache-cassandra/data:/var/lib/cassandra --name=cassandra --net=host cassandra

当它挂起时,Cassandra日志中的最后一行是:

INFO  [main] 2017-05-29 16:16:48,567 ColumnFamilyStore.java:406 - Initializing system.IndexInfo

我怀疑这是一个权限问题,所以这是主机目录的权限是什么

/home/joe/apache-cassandra/data:

0 drwxrwx--- 1 root vboxsf 0 May 29 14:36 commitlog 
0 drwxrwx--- 1 root vboxsf 0 May 29 14:36 data 
0 drwxrwx--- 1 root vboxsf 0 May 29 12:14 hints 
0 drwxrwx--- 1 root vboxsf 0 May 29 12:44 saved_caches

当容器在没有卷装入的情况下运行时,我注意到容器中的等效目录由“cassandra”而不是“vboxsf”拥有。

知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

To" fix"此问题,使用其他路径运行容器,例如/ data-cassandra

问题是您的/ home / joe / apache-cassandra / data是从您的vbox主机安装的。 Docker无法更改此所有者或权限。

相关问题