Hackernoon logoHow To Debug PHP Container With Xdebug And PhpStorm by@ifomin

How To Debug PHP Container With Xdebug And PhpStorm

Igor Fomin Hacker Noon profile picture

@ifominIgor Fomin

Full stack web developer, tech lead, project manager

I will setup a very simple php page and debug it using xdebug and PhpStorm.

Source files can be found here:

https://github.com/ikknd/docker-study in folder recipe-09

1. Create "Dockerfile" file in "docker" folder:

Execute this command from docker folder to build image:

docker build -t php-xdebug-custom -f Dockerfile .

2. Create docker-compose.yml file in "docker" folder:

Here I use "

php-xdebug-custom
" image instead of "
php:7.2-fpm
"

3. Modify php.ini file with xdebug settings:

4. Configure server in PhpStorm:

File -> Settings -> Languages & Frameworks -> PHP -> Servers

Add a new server using + icon, and configure like on the following screenshot:

Make sure to check "Use path mappings" and map php folder to "

/var/www/myapp
"

5. Configure PHP remote debugger in PhpStorm:

Run -> Edit configurations -> PHP Remote Debug

Add a new configuration and give it values like on the following screenshot:

6. Select debug configuration in PhpStorm debug panel

7. Go to /var/www/docker-study.loc/recipe-09/docker/ and execute:

docker-compose up -d

If I now try

myapp.loc/
in browser, I will see results from index.php file.

I can set a breakpoint, start listening for connections in PhpStorm debug panel, and reload page.

Happy debugging!

Tags

Join Hacker Noon

Create your free account to unlock your custom reading experience.