X调试。 Docker。无法禁用自动启动
XDebug. Docker. Can't disable an autostart
我正在通过 docker-compose
命令使用 Docker
。我希望能够在调试和正常模式下 运行 我的应用程序,但现在调试器无论如何都会启动。
我有这样一个app.docker
文件。
FROM php:7-fpm
RUN apt-get update && apt-get install -y libmcrypt-dev mysql-client \
&& docker-php-ext-install mcrypt pdo_mysql
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=1" >> /usr/local/etc/php/conf.d/xdebug.ini \
&& echo "xdebug.remote_autostart=0" >> /usr/local/etc/php/conf.d/xdebug.ini \
&& echo "xdebug.idekey=PHPSTORM" >> /usr/local/etc/php/conf.d/xdebug.ini
WORKDIR /var/www
如果我点击 "Run"
调试会话无论如何都会启动
我希望能够 运行 和调试我的测试(以及应用程序的其余部分)。我错过了一些明显的东西吗?
这是一个意外的 xdebug 远程主机行为。
我已经通过停止使用环境变量修复了它。
在我的docker-compose.yml
app:
...
environment:
...
# removed the line below
XDEBUG_CONFIG: remote_host=docker.for.mac.localhost
...
并将其添加到 docker 文件中。像
RUN yes | pecl install xdebug \
...
&& echo "xdebug.remote_host=docker.for.mac.localhost" >> /usr/local/etc/php/conf.d/xdebug.ini \
可以在此 blog post 阅读更多相关信息。它的创建者为我的解决方案提供了一个想法,我们已经更新了文章。
我正在通过 docker-compose
命令使用 Docker
。我希望能够在调试和正常模式下 运行 我的应用程序,但现在调试器无论如何都会启动。
我有这样一个app.docker
文件。
FROM php:7-fpm
RUN apt-get update && apt-get install -y libmcrypt-dev mysql-client \
&& docker-php-ext-install mcrypt pdo_mysql
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=1" >> /usr/local/etc/php/conf.d/xdebug.ini \
&& echo "xdebug.remote_autostart=0" >> /usr/local/etc/php/conf.d/xdebug.ini \
&& echo "xdebug.idekey=PHPSTORM" >> /usr/local/etc/php/conf.d/xdebug.ini
WORKDIR /var/www
如果我点击 "Run"
调试会话无论如何都会启动
我希望能够 运行 和调试我的测试(以及应用程序的其余部分)。我错过了一些明显的东西吗?
这是一个意外的 xdebug 远程主机行为。
我已经通过停止使用环境变量修复了它。
在我的docker-compose.yml
app:
...
environment:
...
# removed the line below
XDEBUG_CONFIG: remote_host=docker.for.mac.localhost
...
并将其添加到 docker 文件中。像
RUN yes | pecl install xdebug \
...
&& echo "xdebug.remote_host=docker.for.mac.localhost" >> /usr/local/etc/php/conf.d/xdebug.ini \
可以在此 blog post 阅读更多相关信息。它的创建者为我的解决方案提供了一个想法,我们已经更新了文章。