docker-composeで作成したコンテナ環境をPhpStromの画面から利用したいときの設定備忘録です。
以下を行えるように設定します。
- PHPUnitのテストを実行する
- Xdebugを実行する
- Composerを実行する
環境
- Ubuntu18.04 LTS
- PhpStrom 2020.3.1
前提
まずdocker-compose環境を作成し、CLIから問題なく起動するかを確認します。
docker-compose環境
手前味噌ですが、以下のレポジトリを利用します。
以下のコンテナが立ち上がります。
- php74-fpm
- composer
- PostgreSQL
- Nginx
確認
CLIから正常に起動するかを確認
$ docker-compose up -d
docker-php74-nginx-postgres-composer_php_1 is up-to-date
Starting docker-php74-nginx-postgres-composer_db_1 ... done
Starting docker-php74-nginx-postgres-composer_composer_1 ... done
Creating docker-php74-nginx-postgres-composer_web_1 ... done
PhpStormへの設定
dockerの接続情報をPhpStormに設定する
Unix socket経由で接続するよう設定する
確認
"Connection successful" と表示されることを確認する。
docker-compose起動
PhpStormからdocker-compose環境を起動する
docker-compose.yml
の表示画面から、"services"の左に出ている矢印をクリックすることで起動ができる。
確認
PhpStormの画面から矢印をクリックして起動できることを確認する。
PHP実行
PhpStormからphp74-fpmコンテナを利用してphpを実行する
PhpStormからphp74-fpmコンテナを利用してphpunitを実行する
テストが正常に実行できることが確認できる。
Xdebug実行をdocker-composeのphp-fpmコンテナで実行したい。
PHPの設定時にXdebugが認識されているのが確認できる。
ブレークポイントを設定して、そのPHPファイルをdockerコンテナのphp上で動作させればデバッグができる。
Composer実行をdocker-composeのcomposerコンテナで実行したい
installのボタンを押すことで、テストが実行できることが確認できる。