はじめに
この「Docker ボリュームマウント・チャレンジ」では、Docker 環境におけるデータの永続化と共有に不可欠な概念である Docker ボリューム(Docker volumes)の操作スキルをテストします。名前付きボリュームを作成し、そのボリュームをマウントした状態でコンテナを実行し、データを追加することで、Docker ボリュームへの理解を証明してください。この実践的な体験を通じて、Docker ボリュームの知識とその実用的な応用力を強化することができます。
Docker ボリュームの作成とマウント
タスク
data_volumeという名前の新しい Docker ボリュームを作成してください。- Alpine イメージを使用して新しいコンテナを実行します。作成した
data_volumeをコンテナ内の/appディレクトリにマウントしてください。/appディレクトリ内に、内容が "Hello, Docker volumes." であるhello.txtという名前のファイルを作成します。コンテナはバックグラウンドで実行し続けてください。
要件
このチャレンジを正常に完了するために、以下のガイドラインに従ってください:
- すべての操作は
/home/labex/projectディレクトリで行ってください。 - コンテナには Alpine イメージを使用してください。
- コンテナ名は
volume_mounterとしてください。 hello.txtの内容は、正確に "Hello, Docker volumes." としてください。- ボリュームの作成とコンテナの実行には Docker コマンドを使用してください。
- ボリュームはコンテナ内の
/appパスにマウントしてください。 - コンテナがバックグラウンドで実行されていることを確認してください。
例
タスク完了後、以下のコマンドを実行して作業内容を確認してください:
- ボリュームが作成されたか確認する:
docker volume ls | grep data_volume
作成した "data_volume" がリストに表示されるはずです。
- コンテナの状態を確認する:
docker ps | grep volume_mounter
"volume_mounter" コンテナが実行中(running)の状態で表示されるはずです。
- コンテナをインスペクトしてボリュームのマウントを確認する:
docker inspect volume_mounter --format '{{ range .Mounts }}{{ if eq .Destination "/app" }}{{ .Name }}{{ end }}{{ end }}'
"data_volume" と出力されれば、ボリュームが正しくマウントされていることが確認できます。
- 作成したファイルが存在するか確認する:
docker exec volume_mounter cat /app/hello.txt
"hello.txt" ファイルの内容が表示されるはずです。
まとめ
この Docker ボリュームマウント・チャレンジを通じて、Docker ボリュームの理解と、コンテナのライフサイクルを超えてデータを永続化させる重要性を再確認しました。名前付きボリュームの作成、ボリュームをマウントしたコンテナの実行、およびそれらのボリュームへのデータの書き込みを実践しました。
これらのスキルはコンテナ化における基本であり、Docker 環境での効果的なデータ管理を可能にします。ボリュームは、データの永続性を確保し、ホストとコンテナ間で情報を共有するための鍵であることを忘れないでください。



