Windows 10 下使用 PHPStorm 在docker环境中配置xdebug(sdebug)

本文详细记录了在Windows 10上使用PHPStorm结合Docker配置xdebug的步骤,包括Docker环境搭建、安装宝塔面板、安装Sdebug以及在PHPStorm中的设置,最后实现远程调试。

一步一步把配置环境的过程记录下来:

一、安装docker 

  下载DockerDestop ,安装完成后:用win+R 打开%UserProfile%  ,在其目录下编写.wslconfig,内容如下:

[wsl2]

memory=4GB

swap=8GB

localhostForwarding=true

 二、创建docker镜像

 熟悉后可以用脚本来构建,管理员权限打开命令行窗口

1.pull一个基础镜像

docker pull centos:7.9.2009 

2.创建一个容器

docker run -i -t -d --restart=always --name baota -p 7888:8888 -p 7306:3306   -p 7221:21 -p 7222:22 -p 7443:443 -p 7880:80 -p 7881:9003  -v D://centos7-baota/www:/www/wwwroot    -v D://centos7-baota/backup:/www/backup    --privileged centos:7.9.2009 /sbin/init

3.进入容器

docker exec -it baota /bin/bash

4.安装宝塔面板

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
 

5.用宝塔面板配置 nginx ,php,mysql

6.配置网站 

具体配置方法可以参考网站:" https: // https://doc.crmeb.com/mer/mer2/7314"

6.安装 Sdebug(swool 不支持xdebug)

到github上把sdebug下载下来,在容器中创建一个目录 mkdir -p /www/softs,把下截的zip 上传到镜像中并且解压;依次执行下面的命令:

/www/server/php/73/bin/phpize
./configure --enable-xdebug --with-php-config=/www/server/php/73/bin/php-config
make clean
make
make install

7.配置sdebug

在 www/server/php/73/etc 目录的php.ini中增加


[swoole]
extension = swoole.so
extension = /www/server/php/73/lib/php/extensions/no-debug-non-zts-20180731/swoole_loader73.so
zend_extension=/www/server/php/73/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so
[XDebug]
xdebug.remote_enable = 1
xdebug.remote_handler =dbgp
xdebug.remote_host = 192.168.0.104
xdebug.remote_port=9000
xdebug.idekey=PHPSTORM
xdebug.remote_autostart=1
8.重启容器,查看信息

9. 保存成新的镜像

docker commit -a "baota" -m "my baota" b98b55ce6161  baota:v3

b98b55ce6161 是容器ID 用命令docker ps 查看

保存镜像文件到本地文件
docker save -o baota_v3.tar baota:v3
导入本地镜像文件
docker load -i baota_v3.tar

10.停止容器 ( b98b55ce6161)

11.用新的镜像,新运行一个容器


docker run -i -t -d --restart=always --name baota-v3 -p 8888:8888 -p 8306:3306   -p 8821:21 -p 8822:22 -p 7743:443 -p 8880:80 -p 8881:9003  -v D://centos7-baota/www:/www/wwwroot    -v D://centos7-baota/backup:/www/backup    --privileged baota:v3 /sbin/init

可以用原来的映像卷,如果用新的映像卷,把项目复制到新的/www/wwwroot目录下。

三、配置phpstorm(这里用的phpstorm2020)

1.docker设置

2.配置php环境

 

选择你新创建的镜像。

删除原来的映射项目文件的信息,重新配置确认。 

 3.配置debug选项

4.创建一个服务

5.实际项目的调试配置

6.切入容器中执行
export PHP_IDE_CONFIG=serverName=test.crmeb.top 

7.启动调试

8.在chrom浏览器中安装一个xdebug helper

 开启debug

9.在项目在设置断点调试

 10.如果在postman中调试

 只需要在请求参数中加上 XDEBUG_SESSION_START=PHPSTORM 这个参数就行了
也可以 在 Cookie 中添加 XDEBUG_SESSION=PHPSTORM 也可以触发调试。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值