質問: 最強のLaravel開発環境をDockerを使って構築する【新編集版】 - Qiita こちらの記事に従って、開発環境をしているDockerを学びたての初心者です。 以下のdocker-compose.ymlを読んでいて疑問に思った点があったので質問させてください。 ``` version: "3.8" volumes: db-store: php-fpm-socket: services: app: build: ./docker/php volumes: - php-fpm-socket:/var/run/php-fpm - ../backend:/work/backend - ./docker/php/bash/.bash_history:/root/.bash_history - ./docker/php/bash/psysh:/root/.config/psysh web: build: ./docker/nginx ports: - 80:80 volumes: - php-fpm-socket:/var/run/php-fpm - ../backend:/work/backend db: build: ./docker/mysql volumes: - db-store:/var/lib/mysql ports: - 3306:3306 ``` docker-laravel/docker-compose.yml at master · ucan-lab/docker-laravel app,web,dbと依存関係が記載されていないのに、エラーが起きずに動く理由が知りたいです。 私の理解では**webはappに依存関係**があると思うのですが、この`docker-compose.yml`には`depends_on`が使われていません。 どうやって接続をコントロールしているのでしょうか。 よろしくおねがいします。
回答: >webはappに依存関係があると思うのですが アプリケーションとして依存関係はないので個別に起動できます。 機能が動作するときには依存関係(連携)が必要です webがphpを処理するときにはphp-fpmが動いていなければならない。 phpがDBを参照するときはmysqlが動いていなければならない。