WSL2 + Docker + Xdebug + PHP Debug(Visual Studio Code)を使ってPHPをデバッグします。
日頃、VSCodeの「PHP Debug」を使ってデバッグを行っていたのですが、WSL2とDockerの環境下ではちょっとした設定が必要だったので、メモとして残しておきます。
ちなみに今回、以下の環境で実現しました。
- Docker Engine 20.10.17
- PHP 7.3.33
- Xdebug 3.1.5
- Windows 11 Home
- Ubuntu 22.04
- Visual Studio Code 1.63.2
WSL2でUbuntu上にソースを展開し、Dockerでマウントして開発しているプロジェクトを想定しています。
Xdebugのインストール
DockerのPHPコンテナにXdebugがインストールされてない場合、以下のコマンドでインストールします。
# pecl install xdebug && docker-php-ext-enable xdebug
Dockerfileに以下を追記すれば、未インストール時にインストールできます。
RUN bash -c '[[ -n "$(pecl list | grep xdebug)" ]]\ || (pecl install xdebug && docker-php-ext-enable xdebug)'