XDebug en entornos de desarrollo Docker

slxblog-xdebug.jpg
Solucionex
20
Mayo 19

En un artículo anterior os hablé de cómo desplegar un entorno de desarrollo local con Docker. Ahora vamos a ver cómo utilizar XDebug en este tipo de entornos de desarrollo.

 

Extensión Xdebug Helper para Chrome


Se requiere tener la extensión XDebug helper en Chrome.

 

Habilitando Xdebug


COPY xdebug.ini /etc/php/$PHP_VERSION/apache2/conf.d/20-xdebug.ini

El contenido de xdebug.ini es el siguiente:

[XDebug]
zend_extension=xdebug.so
xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.idekey=docker
xdebug.remote_host="host.docker.internal"
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_port=9000

 

XDebug desde VSCode


Para utilizar XDebug con el editor de código VSCode tenemos que tener instalada la extensión PHP Debug y configurar el launch.json tal que así:

{
"version": "0.2.0",
"configurations": [
{
"name": "Docker Xdebug",
"type": "php",
"request": "launch",
"port": 9000,
"pathMappings":{
"/var/www/html":"${workspaceRoot}"
},
}
]
}

La configuración del XDebug Helper para VSCode es la siguiente:

XDebug Helper para VSCode

 

XDebug desde PhpStorm


Para utilizar XDebug desde PhpStorm podéis seguir el siguiente artículo, teniendo en cuenta que los parámetros a utilizar en nuestro caso son los siguientes:

xdebug.remote_host = localhost
xdebug.remote_port = 9000
xdebug.idekey = docker

 

Repositorio Github


Tenéis disponible una plantilla con un entorno Docker preparado para desarrollar Drupal 8 con Xdebug en mi GitHub.