ドッカーで1度起動したコンテナを落として、ボリュームを再マウントするには?

ショコラ
ショコラ

ドッカーで1度起動したコンテナを落として、ボリュームを再マウントするには?

ドッカーファイルの中に VOLUME の記述があれば、コンテナ起動時にボリュームの指定がなくてもボリュームは作られているでキメマス。

もっさん先輩
もっさん先輩

手順

  1. ポストグレスコンテナを起動します。
docker run --name postgres -e POSTGRES_PASSWORD=123456 postgres:14.2
  1. ポストグレスコンテナが使用している volume を確認します。
docker inspect postgres
"Mounts": [
  {
    "Type": "volume",
    "Name": "ad197d1ab1c95d60c8ffdac90fd54d2e291a3bcabc751c4ba1c2224cdee4406d",
    "Source": "/var/lib/docker/volumes/ad197d1ab1c95d60c8ffdac90fd54d2e291a3bcabc751c4ba1c2224cdee4406d/_data",
    "Destination": "/var/lib/postgresql/data",
    "Driver": "local",
    "Mode": "",
    "RW": true,
    "Propagation": ""
  }

ポイントはボリューム名の Name とマウント先の Destination です。

  1. ポストグレスコンテナを落とします。
docker rm -f postgres
  1. 前回のボリュームを再マウントして、ポストグレスコンテナを起動します。
docker run --name postgres\
 --mount source=ad197d1ab1c95d60c8ffdac90fd54d2e291a3bcabc751c4ba1c2224cdee4406d,target=/var/lib/postgresql/data\
 postgres:14.2
Scroll to Top