如何使用PhpStorm调试docker容器

前端之家收集整理的这篇文章主要介绍了如何使用PhpStorm调试docker容器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
无法使用以下配置调试Web应用程序:

Dockerfile:

FROM PHP:7-fpm

RUN yes | pecl install xdebug \
    && echo "zend_extension=$(find /usr/local/lib/PHP/extensions/ -name xdebug.so)" > /usr/local/etc/PHP/conf.d/xdebug.ini \
    && echo "xdebug.remote_enable=on" >> /usr/local/etc/PHP/conf.d/xdebug.ini \
    && echo "xdebug.remote_autostart=0" >> /usr/local/etc/PHP/conf.d/xdebug.ini \
    && echo "xdebug.remote_host=site.dev" >> /usr/local/etc/PHP/conf.d/xdebug.ini \
    && echo "xdebug.remote_log=/var/www/site/xdebug.log" >> /usr/local/etc/PHP/conf.d/xdebug.ini

WORKDIR /var/www/site

Nginx服务器(site.conf):

server {
    server_name site.dev www.site.dev;
    root /var/www/site/src/UI/Web/Silex/Public;
    ...
}

泊坞窗,compose.yml:

version: '2'
services:
    PHP:
        container_name: acme_PHP
        build: etc/docker/development/PHP
        volumes:
            - ./:/var/www/site
    Nginx:
        container_name: acme_Nginx
        build: etc/docker/development/Nginx
        ports:
            - "80:80"
        volumes:
            - ./:/var/www/site
            - ./etc/docker/development/Nginx/site.conf:/etc/Nginx/conf.d/site.conf
        links:
            - PHP

运行服务器:

docker-compose up -d --build

服务器:

enter image description here

调试:

enter image description here

运行/调试配置:

enter image description here

按bug按钮打开chrome但不会在断点处停止:

enter image description here

运行PHPinfo()看起来像(xdebug区域):

enter image description here

xdebug.log:

I: Connecting to configured address/port: site.dev:9000.
I: Connected to client. :-)
-> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="file:///var/www/site/src/UI/Web/Silex/Public/index.PHP" language="PHP" xdebug:language_version="7.1.5" protocol_version="1.0" appid="6" idekey="18032"><engine version="2.5.4"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[http://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2017 by Derick Rethans]]></copyright></init>

-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" status="break" reason="ok"><xdebug:message filename="file:///var/www/site/src/UI/Web/Silex/Public/index.PHP" lineno="5"></xdebug:message></response>

-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" status="stopping" reason="ok"></response>

为什么不在断点处停下来?

猜你在找的Phpstorm相关文章