Comment configurer XDebug avec VSCode, WSL2, Docker for Windows

Bonjour la communauté,

Je suis développeur et pour un projet sous PrestaShop j’ai docké une infra Apache2, PHP-Fpm et MariaDB.

Mon environnement de dev est sous Windows 10 pro avec un backend Debian (WSL2), Docker for Windows et VSCode.

Tout fonctionne parfaitement, mais je souhaiterais utiliser l’extension PHP Debug de Felix Becker pour VSCode afin d’avoir un debugger PHP et c’est là que c’est compliqué

Dans mon conteneur PHP est installer XDebug en version 3.0.2 sur le port 9003 afin d’éviter les conflits avec le port 9000 de php-fpm, mais avec toutes les couches réseaux de Docker, WSL2 et l’hôte je suis un peu perdu pour configurer xdebug.ini et lauch.json (vscode) pour qu’ils puissent communiquer.

Merci d’avance pour votre aide.

Salut @ghis,

Ca manque un peu de précisions pour aider.

  • Ton vscode c’est la version pour windows ou linux dans wsl2 ?
  • Est ce que XDebug écoute sut le port 9003 dans ton container ? Est ce qu’il écoute pas seulement sur la 127.0.0.1
  • Est ce que tu as mappé le port 9003 sur le host vers 9003 dans le container ?
1 « J'aime »

Simple curiosité, pourquoi t’encombrer de tout ça pour dev sur prestashop…?

Bonjour @Uggla

Merci d’avoir pris de ton temps

J’ai posté trop vite car en réfléchissant un peu plus j’ai trouvé la solution finalement:

Quand tu utilise VSCode avec WSL2 (comme en ssh aussi) il installe un “VSCode server” et donc c’est comme si tu était dans ta distro.

Bref le remote n’est pas Windows mais Debian donc l’ip a configurer est celle de Debian.

Merci de t’être intéressé au problème.
Bonne soirée

1 « J'aime »

Bonsoir @freezed

C’est pour débug des modules achetés sur l’addon market de PrestShop

Ils vendent du rêve mais ça marche jamais