php – Xdebug(在Docker容器内)忽略XDEBUG_CONFIG环境变量
我在Docker上运行PHP应用程序,我想使用XDebug进行调试.
我以正确的方式配置PHPStorm,侦听端口9000并运行应用程序. 该应用程序完美无缺,但XDebug似乎没有工作. 如果我移动php.ini文件中的配置行调试器工作,除了服务器名称为空并且我无法调试的事实(这就是为什么我尝试遵循docker-compose配置方式). 如果,在docker容器内,我运行echo $XDEBUG_CONFIG输出是正确的,但是XDebug似乎没有读取那个Env变量. 最佳答案
我有同样的问题.我的图像基于
nimmis/alpine-apache-php7/ .我发现该图像使用supervisor 启动进程.主管不了解Docker环境变量.
告诉主管需要运行进程的惯例是在/ etc / sv / {process} / run创建运行脚本. A script like this用于启动Apache.我需要更改脚本,以便在启动Apache之前导入Docker环境变量. docs for the base image解释了导入Docker环境的惯例:
所以我为Apache创建了my own custom 我通过在my Dockerfile添加一个简单的COPY来覆盖the original
这成功地确保了我的$XDEBUG_CONFIG在启动时对httpd可见.通过打印phpinfo(),我能够确认这会影响我的PHP配置;在网页中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |