Création d'un script de sauvegarde pour vider mongodb à l'intérieur d'un conteneur, j'ai besoin de copier le dossier à l'extérieur du conteneur, Docker cp
ne semble pas fonctionner avec des caractères génériques:
docker cp mongodb:mongo_dump_* .
Ce qui suit est jeté dans le terminal:
Réponse d'erreur du démon: lstat/var/lib/docker/aufs/mnt/SomeHash/mongo_dump_ *: aucun fichier ou répertoire de ce type
Existe-t-il une solution de contournement pour utiliser des caractères génériques avec la commande cp?
Vous pouvez créer les fichiers de vidage mongo dans un dossier à l'intérieur du conteneur, puis copier le dossier: il s'agit d'une solution de contournement.
Il semble qu'il n'y ait pas encore de moyen d'utiliser des caractères génériques avec la commande docker cp https://github.com/docker/docker/issues/771 .
Je pense que la meilleure façon de gérer ce que vous voulez faire est d'utiliser des volumes Docker, afin que vous puissiez directement enregistrer les fichiers du conteneur dans votre dossier Host sans utiliser aucune autre commande: https: //docs.docker. com/engine/userguide/containers/dockervolumes /
J'ai eu un problème similaire et j'ai dû le résoudre en deux étapes:
$ docker exec <id> bash -c "mkdir /extract; mv /path/to/fileset* /extract"
$ docker cp <id>:/extract .