博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
docker环境下,使用phpstorm进行debug
阅读量:6417 次
发布时间:2019-06-23

本文共 923 字,大约阅读时间需要 3 分钟。

在中,阐述了在phpstorm安装xdebug。实际的开发过程中,由于历史项目的存在,不同框架的存在,我们需要借助docker来快速的实现开发环境的部署与统一,本文将阐述如何在docker下实现项目的xdebug

理论概述

与在本机直接开发不同,docker环境下,大体是这样。

clipboard.png

宿主机,即我们开发用的电脑。

我们看到,有以下几点不同:

PHP环境不同

本机开发时。项目的运行环境与IDEA上的CLI,都是本机环境,相统一。

docker开发时,本机环境与dokcer环境可能不统一。

项目的路径不同

本机开发时,xdebug反馈的项目路径,就是开发机的实际路径。

docker环境下,xdebugdocker主机的路径发送给宿主机,但宿主机接收到,在本机上的此路径上,找不到对应的文件。当然,也就没有办法进行正确的信息显示。

远程地址不同

本机开发时,远程主机地址就是本机地址,所以是127.0.0.1

docker开发时,远程主机地址,应该是宿主机地址。

实施

总结出上面的几点不同后,开始实施也变得简单了。

统一PHPSTORM与docker的PHP环境

配置 -> Languages .. -> PHP

CLI Interpreter ... -> + -> From Docker Vagrant

clipboard.png

如果不清楚PHP的路径的话,进行DOCKER容器,使用
whereis php。如果在
service找不到
docker,需要进入
配置 -> docker -> + -> 确定,则
phpstorm会自动为我们找到当前存在的容器。

映射路径

配置 -> Languages .. -> PHP -> SERVICES -> +

clipboard.png

前面提本地项目路径,后面对应docker项目路径。

注意:为了保持统一,在
docker容器配置时,应该使用
volumes来进行磁盘映射。

修改远程地址

修改docker容器中的,php.ini中的xdebug.remote_host=host.docker.internal

host.docker.internal代表:宿主机

添加项目配置信息

clipboard.png

clipboard.png

clipboard.png

clipboard.png

总结

弄懂原理,善于看日志才是解决问题的捷径。

转载地址:http://ompra.baihongyu.com/

你可能感兴趣的文章
探索HTML5之本地文件系统API - File System API
查看>>
PHP实现人人OAuth登录和API调用
查看>>
redis源码笔记 - initServer
查看>>
FindBugs工具常见问题
查看>>
ECSHOP报错误Deprecated: preg_replace(): The /e modifier is depr
查看>>
【iOS】iOS之Button segue弹出popOver消除(dismiss)问题
查看>>
java多线程系列5-死锁与线程间通信
查看>>
数据库分库分表
查看>>
小程序模板嵌套以及相关遍历数据绑定
查看>>
Systemd入门教程:命令篇(转)
查看>>
spring事务学习(转账案例)(二)
查看>>
[官方教程] [ES4封装教程]1.使用 VMware Player 创建适合封装的虚拟机
查看>>
http协议与http代理
查看>>
【iOS开发-91】GCD的同步异步串行并行、NSOperation和NSOperationQueue一级用dispatch_once实现单例...
查看>>
Redis+Spring缓存实例
查看>>
Storm集群安装详解
查看>>
centos7.x搭建svn server
查看>>
原码编译安装openssh6.7p1
查看>>
easyui-datetimebox设置默认时分秒00:00:00
查看>>
蚂蚁分类信息系统5.8多城市UTF8开源优化版
查看>>