docker-compose.ymlでvolumes_fromが使えない時
結論
docer compose ver3ではvolumes_fromが廃止されているのでトップレベルでvolumesを定義すると同じことが実現できます。
volumes_fromは何をやっているか?
docker-compose.ymlには複数のコンテナを定義する場合があります。この別のコンテナのボリュームを持ってきたい、マウントしたいという場面でvolumes_fromを使用すると実現できます。
前提・状況
dockerのwp-cliを使用したい場面があり、検索していたらvolumes_fromを使用しているサイトが出てきました。
ソース
参考にしたものdocker-compose.yml一部抜粋
wordpress:
depends_on:
- mysql
image: wordpress:latest
volumes:
- wordpress_data:/var/www/html
cli:
image: wordpress:cli
container_name: cli
volumes_from:
- wordpress
volumes:
wordpress_data:
これだとエディタ(PHPstorm)で編集している時点で赤く警告を出してくれていました。
以下のように編集して自分の環境では使うことができました。
wordpress:
depends_on:
- mysql
image: wordpress:latest
volumes:
- wordpress_data:/var/www/html
cli:
image: wordpress:cli
volumes: wordpress_data
volumes:
wordpress_data:
※【参考】遭遇したエラー
最初以下のように設定したらエラーがでました。
wordpress:
depends_on:
- mysql
image: wordpress:latest
volumes:
- wordpress_data:/var/www/html
cli:
image: wordpress:cli
container_name: cli
volumes: wordpress
volumes:
wordpress_data:
volumesにコンテナ名を指定しているので当然ですが(汗
Error response from daemon: invalid mount config for type "volume": invalid mount path: 'wordpressimage' mount path must be absolute
参考サイト
とても助かりました。感謝です。
docker compose公式バージョン3では廃止されています。
Author And Source
この問題について(docker-compose.ymlでvolumes_fromが使えない時), 我々は、より多くの情報をここで見つけました https://qiita.com/SwuBHj8aKGqBKHet/items/1a78f2193811087989eb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .