2017-03-09 5 views
0

Bluemixにデータ永続性を持たせてMongodbドッカーコンテナを展開しようとしていますが、ホスト(Bluemix)ボリュームのコンテナ "/ data/db"にマウントしてもコンテナは起動しません。最後の2日間、私は調査し、複数のオプション、including one for Postgres on stackoverflowを試しましたが、同じエラーが発生しています。どんな助けでも大歓迎です。IBM Bluemix:Bluemixホストボリューム上のMongoDBコンテナ "/ data/db"をマウントできません

Error: $ docker logs f450993a-4cc ;chown: changing ownership of '/data/db': Permission denied

ドッキングウィンドウ-コンファイル:

ドッキングウィンドウ-compose.yml

mongodb: 
    container_name: mymongo 
    image: registry.ng.bluemix.net/helpfull/mongo:3.2.10 
    volumes: 
    - mongodb:/data/db:rw 
    ports: 
    - "27017" 
+0

リンクで答えますPostgresの質問のために用意されています。私はdocker-compose.ymlでそれを試したことはありませんが、これはここに記載されているものですhttps://console.ng.bluemix.net/docs/containers/container_troubleshoot.html#ts_vol_owner –

答えて

0

ご提案のための質問とアレックスの素敵な編集のためにあなたにIsrael.Zincをありがとうございます。 previous postRedis solutionに基づくスクリプトでもう少し再生した後、krsyoungで次のように動作させることができました。私はDocker/Bluemixの新機能ですので、これが適切な解決策であるかどうかは分かりませんが、うまくいきます。他の人たちの時間を節約できることを願っています。

ドッカー-コン:

mongo: 
    container_name: hfmongo 
    image: registry.ng.bluemix.net/helpfull/hfmongo:3.4.2 
    volumes: 
    - mongodatabase:/data/db 
    ports: 
    - "27017" 

Dockerfile:

FROM mongo:3.4 

COPY docker-entrypoint-bluemix.sh/
ENTRYPOINT ["/docker-entrypoint-bluemix.sh"] 

EXPOSE 27017 
CMD ["mongod"] 

docker-entrypoint-bluemix.sh

#!/bin/bash 
set -e 
set -x 

if [ "${1:0:1}" = '-' ]; then 
    set -- mongod "[email protected]" 
fi 

if [[ "$1" == mongo* ]] && [ "$(id -u)" = '0' ]; then 
    STARTTIME=$(date +%s) 
    echo "START: hack for IBM Bluemix" 
    chmod 775 "/data/db" 
    adduser mongodb root 
    echo "END: hack for IBM Bluemix" 
    exec gosu mongodb "$BASH_SOURCE" "[email protected]" 
fi 
exec "[email protected]" 
+0

これはあなたのために働いていますか?あなたのアプローチを試して、コンテナが空のログでシャットダウンするのを見ています。 – jamesism

関連する問題