2022年最新版phpstorm配置docker xdebug
phpstorm 调试配置感觉 很麻烦,踩了很多的坑,不说废话了,直接上配置
·
phpstorm 调试配置感觉 很麻烦,踩了很多的坑,不说废话了,直接上配置
参考文章 :
https://www.jetbrains.com/help/phpstorm/configuring-xdebug.html#configuring-xdebug-docker
这是我的PHP.ini配置
[xdebug]
;启用性能检测分析
xdebug.profiler_enable=off
;启用代码自动跟踪
xdebug.auto_trace=off
;允许收集传递给函数的参数变量
xdebug.collect_params=on
;允许收集函数调用的返回值
xdebug.collect_return=on
;调试端口
xdebug.show_exception_trace = On ;开启异常跟踪
xdebug.remote_autostart = Off ;开启远程调试自动启动
xdebug.remote_enable = On ;开启远程调试
xdebug.remote_port = 9003
xdebug.idekey=PHPSTORM
xdebug.default_enable=1
xdebug.remote_log=/tmp/xdebug.log
xdebug.remote_connect_back=0
xdebug.remote_host=host.docker.internal #phpstorm 官方文档上面有写
这里是dockerfile 配置
FROM php:7.3-fpm
RUN mkdir -p /data/www \
&& cd /usr/local/bin \
&& php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" \
&& php composer-setup.php \
&& php -r "unlink('composer-setup.php');" \
&& mv composer.phar composer \
&& chmod a+x composer \
&& pecl install -o -f redis \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable redis \
&& docker-php-ext-install pdo pdo_mysql mysqli opcache \
&& docker-php-ext-install mbstring \
&& pecl install -o -f https://pecl.php.net/get/xdebug-2.9.8.tgz \ #这里建议用 xdebug2,不要用xdebug3,因为字段名改了,有可能出现未知情况,笔者踩了很多次坑,没成功,还是老老实实用2
&& docker-php-ext-enable xdebug \
nginx 的 dockerfile
FROM nginx
RUN mkdir -p /data/www
server {
listen 80;
server_name www.hc.com;
root /data/www/项目目录;
client_max_body_size 300m;
location ~ .+\.php($|/) {
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_pass php:9000;
include fastcgi_params;
}
location ~ \.env($|/) {
return 403;
}
}
docker-composer配置
#yaml 配置实例
version: '3.7'
nginx:
build: ./nginx
container_name: nginx
#image: nginx
privileged: true
working_dir: /data/www
volumes:
- ../../../php/:/data/www:rw
- ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf:rw
- ./nginx/conf/conf.d/:/etc/nginx/conf.d:rw
- ./nginx/logs/:/var/log/nginx:rw
ports:
- "80:80"
- "443:443"
php:
build: ./php
container_name: php73
#image: php:7.3-fpm
privileged: true
working_dir: /data/www/项目目录
volumes:
- ./php/conf/php.ini:/usr/local/etc/php/php.ini
- ./php/log/xdebug.log:/tmp/xdebug.log
- ../../../php/:/data/www:rw # “../../../php” 是win10 上的 实际目录,这里用的相对路径
ports:
- "9000:9000"
# - "9001:9001"
注意:一定要勾选这个选项
配置调试文件
成功运行,
web 调试方法,请自行百度
谢谢大家观看
更多推荐
已为社区贡献1条内容
所有评论(0)