Le débogage à distance avec XDebug à l'intérieur d'un conteneur Docker ne fonctionne pas

Je suis en train de configurer un dockered AMP environnement et ne peut pas obtenir le débogueur distant de travail. Ma configuration est comme suit:

J'ai un conteneur de base de données sous mysql qui fonctionne comme un charme. J'ai construit un menu fixe l'image 'phpmysqli" avec la suite de Dockerfile

FROM php:apache

RUN docker-php-ext-install mysqli mbstring

# zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so
RUN pecl install xdebug
RUN echo 'zend_extension = /usr/local/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so' >> /usr/local/etc/php/php.ini
RUN touch /usr/local/etc/php/conf.d/xdebug.ini; \
    echo xdebug.remote_enable=1 >> /usr/local/etc/php/conf.d/xdebug.ini; \
    echo xdebug.remote_autostart=0 >> /usr/local/etc/php/conf.d/xdebug.ini; \
    echo xdebug.remote_connect_back=1 >> /usr/local/etc/php/conf.d/xdebug.ini; \
    echo xdebug.remote_port=9000 >> /usr/local/etc/php/conf.d/xdebug.ini; \
    echo xdebug.remote_log=/tmp/php5-xdebug.log >> /usr/local/etc/php/conf.d/xdebug.ini;

RUN echo 'date.timezone = Europe/Berlin' > /usr/local/etc/php/conf.d/date.ini

J'appelle

docker run --rm -ti  --name web -p 127.0.0.1:8080:80 -v /path/to/projects:/var/www/html --link db:db  phpmysqli

Après cette phpinfo respectivement php -je montre que xdebug 2.3.2 est en place et en cours d'exécution.

Ensuite, j'ai de l'installation d'un Serveur à l'intérieur de IntelliJ IDEA appelé "Docker" avec l'Hôte 127.0.0.1Port 8080 et Débogueur de Xdebug. - Je configurer le chemin d'accès de la cartographie analogue pour le mappage de Volume dans le menu fixe instruction d'exécuter.

Dans le PHP->paramètres de Débogage j'ai vérifié que j'utilise le port 9000 pour les connexions entrantes, que je vais accepter les connexions externes et que je ne vais pas ignorer les connexions à partir d'un autre serveurs.

Après cela, j'ai créé une nouvelle version de PHP à Distance Configuration de Débogage appelé Docker, trop. Le serveur est Docker, id de session est XDEBUG_IDEA.

Je peux appeler des fichiers PHP sur le Contenant, je peux me connecter à la db via le lien... mais pour quelque raison il n'est rien qui se passe quand j'essaie de démarrer une session de débogage. J'ai essayé d'utiliser un cookie (et oui, j'ai mis XDEBUG_IDEA comme id de session dans l'extension xdebug helper). J'ai essayé d'envoyer des XDEBUG_SESSION_START=XDEBUG_IDEA comme GET...

Pouvez-vous smart gens me dire ce que j'ai raté?

source d'informationauteur Christoph Grimmer-Dietrich