我尝试了很多方法,试图让 Xdebug 在 Docker 容器中工作。
我认为问题要么是我不理解的端口,要么是调试器会话未启动或识别。对于调试器会话,我还尝试安装一个设置 cookie 的浏览器扩展。
我最终至少拥有了单独的容器,其中一个作为启用了 Xdebug 的开发容器。
docker-compose.yml
version: "3"
services:
production:
build: .
ports:
- "8000:80"
volumes:
- .:/var/www/html
development:
build: .
ports:
- "8080:80"
# - "10000:80" also not working
volumes:
- .:/var/www/html
- ./dev.php.ini:/usr/local/etc/php/php.ini
Dockerfile
FROM php:7.4.0-apache
RUN pecl install xdebug \
&& docker-php-ext-enable xdebug
dev.php.ini
xdebug.remote_enable=on
xdebug.remote_host=host.docker.internal
xdebug.remote_port=10000
xdebug.idekey=PHPSTORM
本地主机:8080 phpinfo 数据
PhpStorm 配置
有任何想法吗?
杨魅力