2017-10-05 1 views
0

J'ai utilisé l'image 'hyperledger/fabric-couchdb: x86_64-1.0.2' pour la déployer sur openshift. J'ai obtenu l'autorisation refusée pour '/opt/couchdb/etc/local.d'even bien que j'ai mappé le volume de persistance pour le chemin ci-dessus.Autorisation refusée, pour modification de l'autorisation des fichiers et dossiers créés

Pour résoudre ce problème, j'ai essayé de modifier l'autorisation définie dans 'hyperledger/fabric-couchdb: x86_64-1.0.2' en créant sa propre image docker.

J'ai créé Dockerfile avec le contenu ci-dessous. Mais quand j'ai essayé de construire cette image en utilisant la commande 'docker build', j'ai eu une erreur en-dessous.

docker build . -t deepakmule/fabric-couchdb:x86_64-1.0.2 
Sending build context to Docker daemon 2.048 kB 
Step 1/2 : FROM hyperledger/fabric-couchdb:x86_64-1.0.2 
---> 3f922f54bd68 
Step 2/2 : RUN chgrp -R 0 /opt/couchdb/etc/local.d && chmod -R g=u  /opt/couchdb/etc/local.d 
---> Running in f06a386ecb01 
chgrp: changing group of '/opt/couchdb/etc/local.d/local.ini': Operation not  permitted 
chgrp: changing group of '/opt/couchdb/etc/local.d': Operation not permitted 
The command '/bin/sh -c chgrp -R 0 /opt/couchdb/etc/local.d && chmod -R g=u  /opt/couchdb/etc/local.d' returned a non-zero code: 1 

Répondre

0

Je devine ici un peu:

Le Dockerfile amont a peut-être une commande USER. Donc, toutes les commandes après cette exécution sous cet utilisateur. Vous pouvez corriger cela en ajoutant USER root avant la commande chgrp. Ajouter une autre commande USER par la suite (vérifiez le Dockerfile amont qui a été défini).