提问人:xtrose Media Studio 提问时间:11/2/2021 最后编辑:xtrose Media Studio 更新时间:11/3/2021 访问量:313
我的 Docker 安装程序、xDebug 和 PHP Storm 的问题
Problems with my Docker Setup, xDebug and PHP Storm
问:
我用 Docker 创建了一个开发人员设置。 安装程序工作正常,但我无法使用 xDebug 和 PHP Storm 调试我的应用程序。 Apache 设置和 php.ini 将从我的文件加载。
谢谢你的帮助!
我的docker-compose.yml
version: '3'
services:
mysql:
container_name: www-xtrose-mysql
image: 'bitnami/mysql:5.7'
environment:
- MYSQL_ROOT_PASSWORD=www-xtrose
- MYSQL_DATABASE=www-xtrose
- MYSQL_USER=www-xtrose
- MYSQL_PASSWORD=www-xtrose
ports:
- '10013:3306'
volumes:
- './docker/mysql/data:/bitnami/mysql/data'
php:
container_name: www-xtrose-php
image: 'bitnami/php-fpm:7.4'
volumes:
- './www:/app:delegated'
- './docker/php/php.ini:/opt/bitnami/php/etc/conf.d/php.ini:ro'
apache:
container_name: www-xtrose-apache
image: 'bitnami/apache:2.4'
ports:
- '10011:8080'
- '10012:8443'
depends_on:
- php
volumes:
- './www:/app:delegated'
- './docker/apache/my_vhost.conf:/vhosts/my_vhost.conf:ro'
- './docker/apache/certs:/certs'
volumes:
www-xtrose-mysql:
driver: local
我的php.ini:
display_errors=1
expose_php=0
max_execution_time=360
max_input_time=360
memory_limit=256M
upload_max_filesize=1G
post_max_size=1G
opcache.enable=1
opcache.revalidate_freq=2
opcache.validate_timestamps=1
opcache.interned_strings_buffer=32
opcache.memory_consumption=256
extension=imagick.so
[Xdebug]
zend_extension="/opt/bitnami/php/lib/php/extensions/xdebug.so"
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.remote_host=host.docker.internal
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.idekey=PHPSTORM
xdebug.remote_log="/tmp/xdebug.log"
我的 PHP Storm 调试设置:
答:
0赞
xtrose Media Studio
11/2/2021
#1
好的,我知道了,这真的很简单。 在 Linux 上,不支持 host.docker.internal。 删除 PHP Storm 中的所有服务器和服务器设置。 转到 Settings->php->debug 并将端口 9003 添加到调试端口。
php.ini:
zend_extension = "/opt/bitnami/php/lib/php/extensions/xdebug.so"
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.discover_client_host=1
就是这样。 谢谢大家的帮助
评论
0赞
Fabien Haddadi
12/9/2021
我遇到了同样的问题,但您上面的最终解决方案帖子似乎并不完整。您说要添加端口 9003,但您没有在其他任何地方配置它。它是否也应该在php.ini中配置?另外,你到底在用你的IDE密钥吗?
0赞
Fabien Haddadi
12/9/2021
另外,你没有提到你使用哪个 apt-get 或 pecl 安装来获取你的 xdebug.so 扩展?您是否在 xdebug.ini 中配置了任何内容?如果是,它的路径是什么?唯一对我有用的东西,如果那个 xdebug 出现在php -m
评论