dockerコンテナのVolumeのホスト側のパスを確認する手順

  • 作成日 2020.04.27
  • 更新日 2020.07.18
  • docker
dockerコンテナのVolumeのホスト側のパスを確認する手順

docker-compose.ymlで設定したvolumeのホスト側のパスがわからなくなった際の対応手順を記述してます。

環境

  • docker 19.03.8
  • docker-compose 1.25.4

確認手順

下記のコマンドを実行して確認することが可能です。

docker inspect コンテナ名

実行するとjsonファイルが出力されますが、その中の”Mounts”の中の”Source”に記述されてます。

下記の場合、ホスト側のパスは
“/var/lib/docker/volumes/gitlab_gitlab-data/_data”
となります。

"Mounts": [
            {
                "Type": "volume",
                "Name": "gitlab_gitlab-data",
                "Source": "/var/lib/docker/volumes/gitlab_gitlab-data/_data",
                "Destination": "/home/git/data",
                "Driver": "local",
                "Mode": "Z",
                "RW": true,
                "Propagation": ""
            }
        ],

“Destination”は、コンテナ内のパスとなります。

jsonが見にくい場合は、 “Mounts” だけ抽出する、下記のコマンドを実行すれば見やすくなります。

docker inspect --format='{{.Mounts}}' コンテナ名 |  tr " " "\n"

<出力結果>
[{volume
gitlab_gitlab-data
/var/lib/docker/volumes/gitlab_gitlab-data/_data
/home/git/data
local
Z
true
}

また、volume名を調べて確認することも可能です。まず、volume一覧を確認します。

docker volume ls

対象のVolume名を指定して下記のコマンド実行します。
※ここではVolume名「gitlab_gitlab-data」として実行してます

docker volume inspect gitlab_gitlab-data

<出力結果>
[
    {
        "CreatedAt": "2020-04-17T21:18:31+09:00",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/var/lib/docker/volumes/gitlab_gitlab-data/_data",
        "Name": "gitlab_gitlab-data",
        "Options": null,
        "Scope": "local"
    }
]