多くの場合、移行は避けられません。ハードウェアのアップグレード、データ センターの変更、古いオペレーティング システムなど、これらすべてが移行のきっかけとなる可能性があります。 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 分で説明する
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますワールドカ...
1. 電子商取引の価格競争は依然として拡大中:ニューエッグは利益率向上に3億元を投資業界が「史上最大...
[[416424]]この記事はWeChat公開アカウント「匠心独运维妙维效」から転載したもので、著者...
昨日、百度連合サミットが雲南省大理市で開催されました。百度の創業者で会長兼CEOのロビン・リー氏はス...
業界で SEO 最適化について話すとき、最初に思い浮かぶのは Baidu SEO です。実際、中国市...
2020 年は、パブリック クラウド ベンダーの収益が増加し、パンデミックによってデジタル変革のペー...
本紙(記者:賈中山)は、360社の携帯電話ソフトがアップルのApp Storeに登録されたと報じた。...
[51CTO.com クイック翻訳] ハイブリッドクラウドが企業にとって最適なクラウドであることに疑...
QQ 製品は時代の流れに合わせて昼夜を問わず更新されており、模倣技術の多くはオリジナルの技術よりも優...
LightCloudは現在、フランス、カナダ、韓国、香港のデータセンターでホスティングサービスを運営...
8 月 13 日は Namecheap の 7 周年記念日です。7 周年を記念して、1,000 の仮...
[51CTO.com からのオリジナル記事] ハイブリッド クラウドとマルチクラウドの時代が到来し、...
IBMがRED HATを買収し、クラウド業界に革命を起こし、世界一のハイブリッドクラウドプロバイダー...
私は 2011 年に Linode を使い始めましたが、ウェブサイトに収入がないときに自分のお金を使...
ほとんどのユーザーは気付かないかもしれませんが、デジタル データ入力および交換サーバーは、データのア...