コードが失われ、コンテナ内で実行されているイメージから必要なコードを回復する必要がある場合があります。このとき、コンテナを実行しているサーバー上でいくつかの簡単な操作を実行して、イメージをパッケージ化するときに使用したコードを抽出する必要があります。 すべてのコンテナを表示:dockerコンテナls -a コンテナ ID に従って指定されたコンテナを入力します。docker exec -ti id /bin/bash コンテナ内のディレクトリをサービス指定のフォルダにコピーします。docker コンテナ cp id:/usr/local/tomcat/webapps/province-admin /home/test/province-admin 上記の 3 つの手順を実行すると、コンテナ内のコードがサーバーの指定ディレクトリに抽出されます。サーバーからローカル コンピューターにコードをダウンロードすると、必要なコードを表示できます。 補足: Docker データ ボリューム コンテナーのバックアップとリカバリは非常に詳細です。小白もできるよ! ! ! 日常的には、コンテナとローカルの物理マシン間のディレクトリをマッピングし、それを直接ローカルに保存します。その後、ローカルのハードディスクを定期的にバックアップするだけで済みます。しかし、そのようなマッピングがない場合、バックアップとリカバリをどのように処理すればよいでしょうか? まず、バックアップする必要があるデータ ボリュームを作成します。 docker run -itd -v /opt/zz --name c1 centos /bin/bash
データボリュームコンテナのバックアップ機能を検証するには、マウントされた /opt/zz ディレクトリに c11 ファイルを作成し、内容に「woda」を書き込みます。 [root@160e0646396d zz]# c11.txt をタッチします [root@160e0646396d zz]# echo "woda" > c11.txt [root@160e0646396d zz]# cat c11.txt ウォダ 次に、ボリューム コンテナーをバックアップするには、--volumes-from を使用してバックアップするボリュームをマークし、ホストの現在のディレクトリをコンテナーの /v3 ディレクトリにマウントします。 $(pwd) は、docker が現在のディレクトリを指定するためにサポートしている方法です。Linux の基本的なコマンドを理解している人は、Linux で現在のディレクトリを表示するには pwd コマンドが使用されることに気付くでしょう。 コンテナが起動すると、現在のディレクトリに生成される c23.tar ファイルが /opt/zz コンテナ ボリュームのバックアップ ファイルになります。 このようにして、データ ボリューム コンテナー内のデータがバックアップされます。 練習の全体的なプロセスは次のとおりです。 [root@client ~]# docker run --volumes-from c1 -v $(pwd):/v3 centos tar cvf /v3/c23.tar /opt/zz tar: メンバー名の先頭の「/」を削除する /opt/zz/ テキスト 最後に、バックアップする必要があるコンテナのデータボリュームの内容、/opt/zz/c11.txtを確認します。
2回目の回復バックアップの最終的な目的は、復元できるようにすることです。そうでなければ、バックアップは無意味です。Docker バックアップの復元も非常に簡単で、必要な手順は 2 つだけです。 まず、空のデータボリュームを持つコンテナ /opt/x2 を作成します。 docker run -itd -v /opt/x2 --name c3 centos /bin/bash docker run -itd -v /opt/x2 --name c3 centos /bin/bash 次に、別のコンテナを作成し、データ ボリュームを data1 コンテナ ボリュームにマウントし、untar を使用してバックアップ ファイルをマウントされたコンテナ ボリュームに解凍します。 docker run --volumes-from c3 -v $(pwd):/v3 centos tar xvf /v3/c23.tar この時点で、以前にバックアップされたデータボリュームコンテナのデータはコンテナ /opt/x2 に復元されています。 復元されたデータを表示および検証するには、別のコンテナを起動し、/opt/x2 コンテナ ボリュームをマウントして表示します。 練習の全体的なプロセスは次のとおりです。 [root@client ~]# docker run --volumes-from c3 -v $(pwd):/v3 centos tar xvf /v3/c23.tar オプション/zz/ opt/zz/c11.txt 最後に、先ほどバックアップした c11.txt が c3 コンテナのデータ ボリュームに復元されたことがわかります。 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。 以下もご興味があるかもしれません:
|
<<: mysql replace into の使用法の詳細な説明
>>: テキストの両側に水平線を描くための CSS のサンプルコード
Docker の基本的な手順:アップデートパッケージ yum -y アップデートDocker仮想マシ...
目次解決: 1. 無視する2. 交換する3. 重複キーの更新についてデータを挿入するときに、重複した...
天気予報をウェブサイトに挿入すると、次のような効果が得られます。次のコードを挿入する必要があります:...
Alibaba Cloud Server を使用している場合は、セキュリティ グループ設定でポート ...
導入EXISTS は、サブクエリが少なくとも 1 行のデータを返すかどうかを確認するために使用されま...
目次1. PXCの紹介1.1 PXC の紹介1.2 PXC の特徴と利点1.3 PXCの限界と欠点1...
Linux: Linux バージョン 3.10.0-123.9.3.el7.x86_64 ngin...
目次Node.js の公式紹介Node.jsのコア開発言語ウェブ上の JavaScript と No...
少し前にSQLの独学を終え、MySQL 8.0.17をダウンロードしました。インストールして設定した...
目次序文1. MySQL メインストレージエンジン: 2. さまざまなストレージエンジンがテーブルを...
1. LinuxのMySQLで中国語の文字化けが発生する。以下の操作を実行する。 vi /etc/m...
目次まず結論から質問解決Promiseを使用してコールバック関数をカプセル化する要約するまず結論から...
最近 Django を導入しましたが、MySQL を手動でインストールしたくなかったので、Docke...
H5 レイアウトを設計する場合、通常はバナーに遭遇することになります。例えば、2:1 で表示したい場...
コードをコピーコードは次のとおりです。 <!DOCTYPE html> <html...