LaradockとPhpstormでリモートデバックする方法
Phpstorm&PHP初心者ですが、リモートデバックが上手くいかず時間がかかりました。 次回の為のメモです。
Laradocの設定を変更
①.env
WORKSPACE_INSTALL_XDEBUG=true PHP_FOM_INSTALL_XDEBUG=true
②laradock/workspace/xdebug.ini
xdebug.remote_host=docker.for.mac.localhost xdebug.remote_connect_back=0 xdebug.remote_port=9001 xdebug.idekey=PHPSTORM xdebug.remote_autostart=1 xdebug.remote_enable=1 xdebug.cli_color=1 xdebug.profiler_enable=0 xdebug.profiler_output_dir="~/xdebug/phpstorm/tmp/profiling" xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.var_display_max_children=-1 xdebug.var_display_max_data=-1 xdebug.var_display_max_depth=-1
③laradock/php-fpm/xdebug.ini
xdebug.remote_host=docker.for.mac.localhost xdebug.remote_connect_back=0 xdebug.remote_port=9001 xdebug.idekey=PHPSTORM xdebug.remote_autostart=1 xdebug.remote_enable=1 xdebug.cli_color=1 xdebug.profiler_enable=0 xdebug.profiler_output_dir="~/xdebug/phpstorm/tmp/profiling" xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.var_display_max_children=-1 xdebug.var_display_max_data=-1 xdebug.var_display_max_depth=-1
④ laradock/workspace/crontab/laradock
コメントアウトする。
# * * * * * laradock php /var/www/artisan schedule:run >> /dev/null 2>&1
⑤laradock/php-fpm/Dockerfile
これはリモートデバックとは直接関係ないが、dockerイメージを再構築する際にエラーがでることがあるので変更しておく。
########################################################################### # ImageMagick: ########################################################################### USER root ARG INSTALL_IMAGEMAGICK=false RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \ rm -rf /var/lib/apt/lists/* && \ apt-get update && \ apt-get install -y libmagickwand-dev imagemagick && \ pecl install imagick && \ docker-php-ext-enable imagick \ ;fi
⑥
dockerイメージを再構築。
docker-compose up -d --build nginx mysql workspace
⑦Phpstormの設定
Preferences > Languages & Frameworks > PHP > Debug >
項目 | 設定内容 |
---|---|
Name | 任意 |
Host | localhost |
Port | 80 |
Debugger | Xdebug |
User path mapping | チェックする |
File/Directory | Laravelプロジェクトのフォルダ |
Absolute path on the server | /var/www |
Preferences > Languages & Frameworks > PHP > xdebug
項目 | 設定内容 |
---|---|
Debug port: | 9001 |
ブレイクポイントを設定
画面右上の「虫マーク」を押して、ブレイクポイントを設定する。
⑧コードを実行
ブレイクポイントを設定したコードが実行されるようにブラウザでアクセスする。
参考
以下がすごく参考になりました。 Laradock+PhpStormでXdebug - けけずんセルフハッキング