今日は、Dockerコンテナをバックアップする方法を見ていきます。
このプロセスはすべてのDockerコンテナで同じですが、実際に起こっていることを表示する最も簡単な方法の1つだと思うので、SynologyNASでデモを行います。プロセスをできるだけ簡単にまとめると、Dockerコンテナーを作成するときに、特定のボリューム(基本的にはコンテナー内のフォルダー)をローカルの保存場所にマウントします。 Synology NASでは、これは通常 docker フォルダ(すべてのデータを保存する場所)。ただし、他のデバイスでは、ローカルの保存場所である可能性があります。 このフォルダには、コンテナに関するすべての重要な情報が含まれており、最終的にはバックアップしたいものです 。
Dockerコンテナーを復元する必要がある場合、バックアップを復元することはありません。バックアップしたフォルダを復元し、コンテナを元の状態に正確に再作成します。その後 コンテナーがデータを確実に読み取るように、フォルダーの場所をマウントします。
これは上のビデオでより雄弁に示されていますが、これについて考える最良の方法は、過度に単純化されたPCの例を使用することです。すべてのデータを「ドキュメント」フォルダに保存すると、ドキュメントフォルダをバックアップすると、重要な情報がすべてバックアップされます。これで、ハードドライブがクラッシュし、ドキュメントのバックアップしか残されていない場合は、オペレーティングシステムを再インストールし、ドキュメントを復元すると、元の場所に戻ることができます。最も単純な形式では、これがDockerコンテナーの動作方法です。コンテナ情報は必ずしも重要ではありませんが、あなたのためにパーソナライズされたデータは 。
以下のスクリーンショットは、SynologyNASでのバックアップと復元のプロセスを示しています。 上記の動画では説明がより詳細でわかりやすくなっている可能性があることに注意してください。ただし、以下の情報を要約するように最善を尽くします。
1。 Dockerコンテナをバックアップする方法
Dockerコンテナーを作成するときは、特定のボリュームをローカルの場所にマップします。通常、これは必須ではありませんが、できるようにすることをお勧めします コンテナの重要なデータをバックアップします。全体として、コンテナはボリュームマッピングがなくても期待どおりに機能しますが、必要に応じてデータを保持できるように、時間をかけて作成することをお勧めします。
この例では、Unifiコントローラーを使用していますが、このプロセスはすべてのコンテナーに当てはまります。下の画像では、 / unifiをマッピングしていることがわかります。 docker / Unifi-Controller への場所(コンテナ内のフォルダ) SynologyNAS上の場所。
Hyper Backupなどのツールを使用して、このフォルダーをクラウドの宛先にバックアップしたり、Synology NASを分離したり、ローカルにバックアップしたりすることができます。ハイパーバックアップは他のオペレーティングシステムには存在しないことに注意してください。そのため、現在使用しているオペレーティングシステムでボリュームをバックアップするための最良の方法を見つける必要があります。ここで重要なポイントは、すべてをバックアップすることです。 コンテナにマッピングしたフォルダ。
個々のフォルダをバックアップした後、コンテナを任意のに復元できるようになります Dockerを実行できるデバイス。これがDockerの真の力です。NASで実行されたくないですか? Dockerを使用してLinuxVMをセットアップすると、すぐに稼働できるようになります。
2。 Dockerコンテナを復元する方法
最後のステップでは、Dockerコンテナをバックアップする方法を確認しました。 Dockerコンテナとマップするボリュームの関係を理解することが重要です。マップしたフォルダに何かがある場合は、読み取りします。 そのデータ。そのフォルダに何かがない場合は、作成します そのローカルストレージ上のファイル。これを考える最良の方法は、ログインの観点からです:
- Dockerコンテナを設定し、ユーザー名/パスワードを作成すると、そのユーザー名/パスワードは、マップしたフォルダーの1つに存在します。
- そのフォルダを削除すると、ユーザー名/パスワードが技術的に存在しないため、ログインできなくなります。
- バックアップからそのフォルダを復元する場合は、します コンテナが読み取るので、ログインできます そのフォルダにある情報。
以上のことをすべて踏まえて、データをどの程度正確に復元しますか?まあ、それはかなり簡単です。
- 復元 データをローカルマシン上のフォルダに保存します(通常、バックアップツールを使用するか、フォルダをその場所に移行します)。
- まったく同じ設定を使用してコンテナーを再作成し、復元したフォルダーを正しいマウントポイント(コンテナーフォルダー)にマップします。 Unifiコントローラーの例を使用すると、それは / unifiになります 位置。コンテナを起動すると、そのフォルダ(すべての情報が含まれています)が自動的に読み取られ、開始した場所に戻ります。
注: Dockerコンテナがすでに存在する場所にデータを復元する場合は、データを復元してからコンテナを再起動するだけでよいことに注意してください。復元したバックアップの設定で再起動する必要があります。
Dockerコンテナーがどのように機能するかを理解したら、それらをバックアップおよび復元する方法を理解するのは簡単です。マウントパスがどのように機能するかを正確に理解するのが難しい場合があります。
3。結論–Dockerコンテナをバックアップする方法
このチュートリアルでは、Dockerコンテナをバックアップする方法と復元する方法を示しました。このプロセスはすべてのマシンで同様に機能します。Dockerコンテナは軽量でポータブルになるように設計されているため、必要に応じて別のデバイスに簡単に移行できます。
このチュートリアルがプロセスの簡素化に役立つことを願っていますが、ご不明な点がございましたら、上のYouTube動画のコメントセクションにご遠慮なくお寄せください。

Dockerコンテナ内でアプリケーションをインストール、実行、削除する方法–パート2

DockerとKubernetes

SynologyNASでUnifiコントローラーをセルフホストする