多くの場合、移行は避けられません。ハードウェアのアップグレード、データ センターの変更、古いオペレーティング システムなど、これらすべてが移行のきっかけとなる可能性があります。 Docker コンテナの移行は、多くの場合、移行タスクの一部です。今日は、Docker コンテナを既存のサーバーから別のサーバーに移行するさまざまな方法について説明します。 Docker コンテナを別のサーバーに移行する方法。 Docker コンテナをあるサーバーから別のサーバーに直接移行する方法はありません。以下の 1 つ以上の方法を使用して、Docker コンテナの移行の問題を解決します。 1. コンテナの輸出入コンテナをエクスポートするということは、コンテナのファイル システムから圧縮ファイルを作成することを意味します。エクスポートされたファイルは「gzip」ファイルとして保存されます。
次に、scp や rsync などのファイル転送ツールを使用して、圧縮ファイルを新しいサーバーにコピーします。新しいサーバーでは、この gzip ファイルが新しいコンテナーにインポートされます。
新しいサーバーで作成された新しいコンテナには、「docker run」コマンドを使用してアクセスできます。 コンテナのエクスポート ツールの欠点の 1 つは、コンテナのポートと変数がエクスポートされず、コンテナを含む基礎データもエクスポートされないことです。 これにより、別のサーバーにコンテナをロードしようとするとエラーが発生する可能性があります。この場合、コンテナをあるサーバーから別のサーバーに移行するために、Docker イメージの移行を選択します。 2. コンテナイメージの移行Docker コンテナを別のサーバーに移行する最も一般的な方法は、コンテナが関連付けられているイメージを移行することです。 移行する必要があるコンテナについては、まず「Docker commit」コマンドを使用して Docker イメージを圧縮ファイルに保存します。
結果のイメージは圧縮されて新しいサーバーにアップロードされ、そこで「docker run」を使用して新しいコンテナが作成されます。 この方法では、データボリュームは移行されませんが、コンテナ内に作成されたアプリケーションのデータは保持されます。 3. 画像の保存と読み込みDocker イメージは、アプリケーションのコード、ライブラリ、構成ファイルなどのパッケージです。Docker コンテナはこれらのイメージから作成されます。 「docker save」を使用してイメージを圧縮し、新しいサーバーに移行できます。
新しいサーバーで、「docker load」を使用して、圧縮されたイメージ ファイルを使用して新しいイメージを作成します。
4. データボリュームを移行するDocker コンテナ内のデータ ボリュームは、コンテナ固有のデータが含まれる共有ディレクトリです。ボリューム内のデータは永続的であり、コンテナの再作成時に失われることはありません。 エクスポート ツールまたはコミット ツールを使用して Docker コンテナーまたはイメージをあるサーバーから別のサーバーに移行する場合、基礎となるデータ ボリュームは移行されません。 この場合、データを含むディレクトリは手動で新しいサーバーに移行されます。次に、新しいサーバー上にコンテナを作成し、そのディレクトリをデータ ボリュームとして参照します。 もう 1 つの簡単な方法は、「docker run」コマンドに「-volumes from」パラメータを渡してデータ ボリュームをバックアップおよび復元することです。
ここで、データボリューム名は /path/to/volume です。このコマンドは、データ ボリュームのバックアップを提供します。作業ディレクトリを指定するには、-w/backup を指定することもできます。 /backup フォルダに生成されたバックアップは、scp または ftp ツールを使用して新しいサーバーにコピーできます。コピーされたバックアップは抽出され、新しいコンテナのデータ ボリュームに復元されます。
5. Dockerコンテナ全体を移行するここで紹介したアプローチは、単一のコンテナに対して機能します。しかし、すべてのコンテナをあるサーバーから別のサーバーに移行する必要がある場合は、別のアプローチを採用します。 この方法では、docker ディレクトリ全体 (「/var/lib/docker」) を新しいサーバーにコピーします。このアプローチを成功させるには、いくつかの重要なポイントを特定する必要があります。
何らかの障害によりこの方法が機能しない場合は、コンテナとイメージをあるサーバーから別のサーバーに移行するためのカスタム スクリプトを構成します。 結論: Docker コンテナは、DevOps や Web ベースのホスティングで広く使用されています。今日は、Docker エンジニアが管理する Docker インフラストラクチャ内の別のサーバーに Docker コンテナを移行するさまざまな方法について説明しました。 ※この記事は https://bobcares.com/blog/move-docker-container-to-another-host/ から翻訳したものです。著作権侵害があった場合は削除するためにご連絡ください |
<<: ICTとクラウドコンピューティングの主なトレンドはエッジコンピューティングになる
>>: 1つの記事で完了! Saga 分散トランザクションを 10 分で説明する
アプリが開発されたら、次のステップでは当然アプリの宣伝に重点が置かれることになります。部隊が移動する...
Cloudcone は、親会社が長い歴史を持つものの、新しいブランドとしては設立されてまだ 3 年し...
翻訳者 |李睿校正:孫淑娟API ゲートウェイは、マイクロサービスを公開する上で重要な役割を果たしま...
[51CTO.com からのオリジナル記事] データ センターは、情報が集中的に処理、保存、交換され...
[51CTO.com からのオリジナル記事] 長年の開発を経て、オープンソース ソフトウェアはソフト...
よく、企業が資金調達をしようとしているときや買収交渉をしているときに、この質問を受けます。「私の会社...
Nacos (Namings and Configuration Management) は、Ali...
15 年の歴史を持つ高防御サーバー販売業者 Sharktech (Shark Data Center...
最近、多くの初心者から「検索エンジンがホームページを更新しないのはなぜですか?」という質問を受けるよ...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスWeibo が初めてリリ...
グローバル化とデジタル化が経済発展のキーワードとなっている現在、中国企業は国内外の急速に変化する市場...
tmthosting のシアトル VPS が 55% オフで販売されています。データ センターは米国...
「どうしたの?」特定の種類のダイアログ ボックスに慣れていない限り、ダイアログ ボックスが表示された...
ウェブサイトのキーワードが良いランキングを獲得した後、多くのウェブマスターは喜びに浸りますが、このと...
百度は11月25日、百度ウェブマスターツールの外部リンク検索ツールのベータ版をリリースした。武漢SE...