本文介绍通过docker compose的使用方式
第一步:在php镜像中安装phpxdebug扩展,比如php7.4对应的是xdebug3.1.6
第二步:设置项目中的docker-compose.yml
docker-compose 增加开启xdebug的环境变量,host.docker.internal是宿主机的地址,也就是你本地局域网的ip,也可以直接写成 ip:9100
environment: PHP_DEBUG: host.docker.internal:9100
第三步:配置startuop.sh,添加如下代码
有的安装环境是放在php.ini里的道理一样,就是吧xdebug的配置写入docker容器的配置文件里 if [ -n "$PHP_DEBUG" ]; then IFS=':' read -ra ADDR <<< "$PHP_DEBUG" { \ echo 'xdebug.mode=debug' ;\ echo 'xdebug.start_with_request =yes' ;\ echo 'xdebug.remote_handler="dbgp"' ;\ echo "xdebug.idekey=${PHP_DEBUG_IDEKEY:-xdebug}" ;\ echo "xdebug.client_host=${ADDR[0]:-127.0.0.1}" ;\ echo "xdebug.client_port=${ADDR[1]:-9000}" ;\ } >> /etc/php/${PHP_VERSION}/mods-available/xdebug.ini fi
第四步:运行容器 docker-compose up
然后进入到容器里看下是不是写入成功了,这里每次启动都会写入会有多条还没想好怎么处理
#查看运行的容器
docker ps
#进入容器windows
docker exec -it [CONTAINER ID ] bash
#退出
exit
打印phpinfo 查看配置
第七步 :配置phpstorm IDE
完成,可以正常打印了