3.3.2.4. Configure Xdebug for Visual Studio Code

Table of Contents

3.3.2.4.2. Assumption

For the sake of this example, we will assume the following paths:

Directory Path
Devilbox git directory /home/cytopia/repo/devilbox
HOST_PATH_HTTPD_DATADIR ./data/www
Resulting local project path /home/cytopia/repo/devilbox/data/www

The Resulting local project path is the path where all projects are stored locally on your host operating system. No matter what this path is, the equivalent remote path (inside the Docker container) is always /shared/httpd.

Important

Remember this, when it comes to path mapping in your IDE/editor configuration.

3.3.2.4.3. Configuration

1. Install vscode-php-debug

2. Configure launch.json

launch.json
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xbebug",
            "type": "php",
            "request": "launch",
            "port": 9000,
            "serverSourceRoot": "/shared/httpd",
            "localSourceRoot": "/home/cytopia/repo/devilbox/data/www"
        }, {
            "name": "Launch currently open script",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9000
        }
    ]
}

Important

Recall the path mapping!