コンテナー内にmongodbをダンプするバックアップスクリプトを作成します。コンテナーの外にフォルダーをコピーする必要があります。Dockercp
はワイルドカードで動作しないようです。
docker cp mongodb:mongo_dump_* .
ターミナルで以下がスローされます:
デーモンからのエラー応答:lstat/var/lib/docker/aufs/mnt/SomeHash/mongo_dump_ *:そのようなファイルまたはディレクトリはありません
Cpコマンドでワイルドカードを使用するための回避策はありますか?
コンテナー内のフォルダーにmongoダンプファイルを作成してから、そのフォルダーをコピーできます。これは回避策です。
Docker cpコマンドでワイルドカードを使用する方法がまだないようです https://github.com/docker/docker/issues/771 。
私はあなたがやりたいことを処理するための最良の方法は、Dockerボリュームを使用することだと思うので、他のコマンドを使用せずにコンテナーからHostフォルダーにファイルを直接保存できます: https://docs.docker。 com/engine/userguide/containers/dockervolumes /
同様の問題があり、2つのステップで解決する必要がありました。
$ docker exec <id> bash -c "mkdir /extract; mv /path/to/fileset* /extract"
$ docker cp <id>:/extract .