PHPコンテナからDBコンテナに接続する
Docker環境でPHP+DBの環境を作成する場合、それぞれコンテナを分ける形で構築するのが一般的ですが、コンテナが別々なので、PHPからDBを参照できないエラーが発生して、悩まれる方も居るかと思います。
今回はDockerコンテナのPHPから、DockerコンテナのDB(MariaDb, MySQL等)に接続する設定です。.envに指定するコンテナ名が誤っていると接続できません。必要最低限の記述だけ残し、ポイントを絞って載せてあります。

compose.yaml
9行目のコンテナ名がPHPから接続するときに使用する名前です。
services:
#WEBサーバー
nginx:
(省略)
#アプリケーション
app:
(省略)
#データベース
mariadb:
(省略)
appコンテナ内の「.env」
compose.yamlで指定したDBコンテナ名を.envに指定します。
DB_CONNECTION=xxx
DB_HOST=mariadb
DB_PORT=xxx
DB_DATABASE=xxx
DB_USERNAME=xxx
DB_PASSWORD=xxx
コメント