#はじめに
Docker for WindowsでIISウェブサイトの開発環境を作る手順の[方法その2]コンテナ側のディレクトリにアクセスするで紹介した、コンテナの実行方法で、コンテナ側に新にボリュームを設定しました。
このボリュームはDockerエンジンがホストのどこかに保存しています。
#dockerのボリューム機能を使う
Dockerが管理するボリュームを列挙するには以下のコマンドを実行します。
ところで、上のスクショにはmy-volume
という名前のボリュームがありますが、以下のように簡単に任意のボリュームを作成できます。
ホストのどこにボリュームがあるのかを調べるにはdocker volume inspect
を使います。
ところでdocker volume inspect
コマンドは完全なボリュームIDを必要とするようです。これはdocker run
がイメージIDの一部を取るのとは対照的ですね。
#ボリュームをマウントする
このボリュームをコンテナにマウントするには、以下のようなコマンドを使います。
- -v コマンドにボリュームIDを指定します
- :のあとにコンテナ側のマウントするディレクトリ名を指定します
コンテナ側から正しくボリュームがマウントされているか確認します。index.html
ファイルが存在するか、ファイルの日付が同じかどうかを検証します。
正しくマウントされています。
#まとめ
Dockerのボリューム機能を使うことで同じボリューム、つまり同じフォルダーとファイルの集合、を異なるコンテナで使いまわしをすることが出来ます。例えば異なる環境を複数のイメージ(もしくはコンテナ)で再現し、全く同じボリュームをマウントしてそのふるまいを観察する、などの応用が考えられます。