Linux と Docker: コンテナーの永続ストレージとデータ管理を実行するにはどうすればよいですか?
コンテナ化テクノロジーの適用において、コンテナーの永続ストレージとデータ管理は非常に重要な部分です。この記事では、Linux と Docker でコンテナーの永続ストレージを実装する方法を紹介し、対応するコード例を示します。
1. Docker のコンテナ永続ストレージ
Docker では、コンテナはイメージを通じて作成され、イメージ自体は読み取り専用です。したがって、コンテナーを削除すると、コンテナー内のデータも失われます。コンテナの永続ストレージを実装するには、次のメソッドを使用できます。
データ ボリュームは、Docker で最も一般的に使用される永続ストレージ方法の 1 つです。データ ボリュームを作成し、それをコンテナーの指定されたパスにマウントすることで、コンテナー データの永続的なストレージを実現できます。
まず、データ ボリュームを作成します:
$ docker volume create myvolume
次に、以下に示すように、docker run
コマンドを使用してデータ ボリュームをコンテナーにマウントできます。 #
$ docker run -v myvolume:/data myimage
/data パスが
myvolume という名前のデータ ボリュームにマッピングされます。コンテナが削除されても、データボリュームは自動的に削除されず、データは保持されます。
docker run コマンドを使用してマウントをバインドできます。
$ docker run -v /host/path:/container/path myimage
/host/path##ディレクトリはコンテナ内の /container/path
パスにマップされます。コンテナが削除されても、ホスト上のデータは残ります。 2. Linux でのコンテナ永続ストレージ
Docker でのコンテナの永続ストレージに加えて、Linux の基盤テクノロジーを通じてコンテナ データ管理を実装することもできます。
共有ファイル システムの使用まず、ext4 ファイル システムを使用するなど、ホスト上にファイル システムを作成する必要があります。次のコマンドを使用できます。
$ mkfs.ext4 /dev/sdb1
その後、
を使用できます。 mount コマンドを実行すると、ファイル システムがコンテナ内の指定されたパスにマウントされます: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$ mount /dev/sdb1 /container/path</pre><div class="contentsignin">ログイン後にコピー</div></div>
この方法では、コンテナ内の
パスが共有ファイル システム。コンテナが削除されても、データは保持されます。
まず、LVM (Logical Volume Manager) などのストレージ ボリューム マネージャー ソフトウェア パッケージをインストールする必要があります。
$ apt-get install lvm2
次に、
lvcreate コマンドを使用して、論理ボリュームの作成 (論理ボリューム): <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$ lvcreate -L 1G -n myvolume myvg</pre><div class="contentsignin">ログイン後にコピー</div></div>
この方法で、サイズ 1GB の論理ボリュームを作成し、
という名前を付けました。 次に、
コマンドを使用して、論理ボリューム上にファイル システムを作成できます。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$ mkfs.ext4 /dev/myvg/myvolume</pre><div class="contentsignin">ログイン後にコピー</div></div>
最後に、
コマンドを実行すると、論理ボリュームがコンテナ内の指定されたパスにマウントされます: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$ mount /dev/myvg/myvolume /container/path</pre><div class="contentsignin">ログイン後にコピー</div></div>このようにして、コンテナ内の /container/path<p> パスが論理ボリュームとしてマウントされます。コンテナが削除されても、データは残ります。 <code>
要約すると、Docker であっても Linux であっても、さまざまな方法でコンテナの永続ストレージとデータ管理を実現できます。適切な方法を合理的に選択することで、コンテナ内のデータをより適切に管理および維持できます。
この記事が、コンテナーの永続ストレージとデータ管理の理解と使用に役立つことを願っています。
リファレンス:
Docker ドキュメント: https://docs.docker.com/storage/以上がLinux と Docker: コンテナーの永続ストレージとデータ管理を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。