![](/img/trans.png)
[英]SQLServer Container looses Data when stopped although it is mounted to volume
[英]Riak container does not start when its data volume is mounted
以下命令可以正常運行,並且riak服務將按預期啟動:
docker run --name = riak -d -p 8087:8087 -p 8098:8098 -v $ {pwd)/ schemas:/ etc / riak / schema basho / riak-ts
本地schemas
目錄已成功安裝,並且riak讀取了其中的sql
文件。 但是,如果我嘗試安裝riak的data
或log
目錄,則riak服務無法啟動,並且15秒后會超時:
docker run --name = riak -d -p 8087:8087 -p 8098:8098 -v $ {pwd)/ logs:/ var / log / riak -v $ {pwd)/ schemas:/ etc / riak / schema basho / riak-ts
docker logs riak
輸出:
+ / usr / sbin / riak開始
riak在15秒內無法啟動,
有關更多信息,請參見“ riak控制台”的輸出。
如果要等待更長的時間,請設置環境變量
WAIT_FOR_ERLANG要等待的秒數。
為什么將riak的日志或數據目錄掛載到本地目錄后無法啟動?
此問題與掛載的log
文件夾的目錄所有者有關。 該文件夾$GROUP
和$USER
預計將riak
如下:
root@20e489124b9a:/var/log# ls -l
drwxr-xr-x 2 riak riak 4096 Jul 19 10:00 riak
但是有了卷,您將得到:
root@3546d261a465:/var/log# ls -l
drwxr-xr-x 2 root root 4096 Jul 19 09:58 riak
解決此問題的一種方法是在啟動容器之前在主機上以riak
用戶和組的身份擁有目錄所有權。 我在docker映像中查看了UID / GID( /etc/passwd
),它們是:
riak:x:102:105:Riak user,,,:/var/lib/riak:/bin/bash
現在,在啟動容器之前,請更改主機目錄上的所有權,如下所示:
sudo chown 102:105 logs/
sudo chown 102:105 data/
這應該解決。 至少現在(是。 詳細信息在這里 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.