はじめに
この実験では、docker volume inspect コマンドを使用して Docker ボリュームの詳細情報を表示する方法を学びます。まず、コンテナデータを永続化するための推奨方法である Docker ボリュームを作成します。
作成後、ボリュームを調査して、その名前、ドライバー、ホストマシン上の重要なマウントポイントなど、完全な構成詳細を確認します。最後に、inspect コマンドの出力をフォーマットして、マウントポイントのみを具体的に表示する方法を学び、Go テンプレートを使用して特定の情報を抽出する方法を実証します。
Docker ボリュームを作成する
このステップでは、Docker ボリュームを作成する方法を学びます。Docker ボリュームは、Docker コンテナによって生成され、使用されるデータを永続化するための推奨方法です。バインドマウントはホストマシンのディレクトリ構造に依存しますが、ボリュームは Docker によって完全に管理されます。
Docker ボリュームを作成するには、docker volume create コマンドに続けてボリュームに付けたい名前を指定します。myvolume という名前のボリュームを作成しましょう。
docker volume create myvolume
作成が成功した場合、コンソールにボリュームの名前が表示されるはずです。これは、Docker がコンテナで使用できる myvolume という名前のストレージボリュームを正常に作成したことを示しています。
作成したボリュームを調査する
前のステップで、myvolume という名前の Docker ボリュームを作成しました。では、このボリュームの詳細を確認しましょう。docker volume inspect コマンドは、特定のボリュームに関する詳細情報を提供します。これには、ボリュームの名前、ドライバー、ホストマシン上のマウントポイントなどが含まれます。
myvolume ボリュームを調査するには、次のコマンドを実行します。
docker volume inspect myvolume
出力は、ボリュームに関する情報を含む JSON 配列になります。ボリュームの Name、Driver(通常はデフォルトで local)、Mountpoint などの詳細やその他の設定を確認できます。Mountpoint は、ボリュームのデータが格納されているホストマシン上のディレクトリです。
出力をフォーマットしてマウントポイントを表示する
前のステップで、myvolume ボリュームを調査し、完全な JSON 出力を確認しました。多くの場合、マウントポイントのような特定の情報のみに関心があることがあります。Docker の inspect コマンドを使用すると、Go テンプレートを使って出力をフォーマットすることができます。
myvolume ボリュームのマウントポイントのみを表示するには、-f または --format フラグと Go テンプレートを使用します。テンプレート {{.Mountpoint}} を使用すると、JSON 出力から Mountpoint フィールドの値を抽出できます。
マウントポイントのみを表示するには、次のコマンドを実行します。
docker volume inspect myvolume -f '{{.Mountpoint}}'
このコマンドの出力は、myvolume のデータが格納されているホストマシン上の絶対パスになります。このパスは Docker によって管理され、通常は Docker データのルートディレクトリ内にあります。
まとめ
この実験では、コンテナのデータを永続化するための推奨方法である Docker ボリュームの管理方法を学びました。まず、docker volume create コマンドを使用して myvolume という名前の Docker ボリュームを作成しました。これにより、コンテナ用の管理されたストレージ領域を設定する基本的なプロセスを実証しました。
作成後、docker volume inspect コマンドを使用してボリュームの詳細情報を表示する方法を調べました。このコマンドは、ボリュームの名前、ドライバー、そして重要なことにホストマシン上のマウントポイントなどの重要な詳細を含む包括的な JSON 出力を提供します。最後に、Go テンプレートを使用して inspect コマンドの出力をフォーマットする方法を学び、特に Mountpoint 情報のみを抽出して表示することに焦点を当て、詳細なボリューム情報から特定のデータポイントを取得する方法を示しました。



