1. centos7虚拟机在mac下很坑,mysql安装不了,安装不了就直接在docker上安装myqsl,好在docker对外无须配置端口。报错信息如下,一直没解决,只好放弃mysql的安装。

sh-4.2# systemctl

Failed to get D-Bus connection: No such file or directory

  1. centsos7上只能安装老版本的宝塔,最新的版本的宝塔端口是随机的,后面找才找到办法,保存现在镜像,重新启动新的容器。这样可以解决宝塔端口不固定的问题。centos7上好像安装不了最新的宝塔。

老宝塔安装地址:yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh 新的可以直接上官网查询 yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

  1. 无耐又安装了ubuntu22.04版本,安装最新的宝塔。安装好后将容器打包成镜像,命令:docker commit ubuntu2204_php ubuntu2204_bt

然后重新启动镜像,添加随机的访问端口号。最后还是没用ubuntu系统。说实话软件安装还是ubuntu快。centos8更是坑,在docker上安装好后什么软件都没有,连下载软件的功能都使用不了,还得在宿主要上下载好拷上去安装,真是日了狗了。最后还是放弃了。

  1. 进入宝塔安装xcode插件。然后配置php.ini文件。在宝塔的管理界面还是很容易配置的。

zend_extension=/www/server/php/70/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so

[xdebug]

xdebug.client_port=9003

xdebug.mode=debug

xdebug.discover_client_host=1

xdebug.client_host=host.docker.internal

xdebug.idekey = VSCODE

xdebug.start_with_request=yes

xdebug.remote_enable = 1

xdebug.remote_autostart = 1

xdebug.remote_handler = "dbgp"

xdebug.remote_port = 9001

xdebug.remote_host = 192.168.1.54

  1. vscode安装phpdebug插件。配置launch.json文件。

"configurations": [

{

"name": "Listen for Xdebug",

"type": "php",

"request": "launch",

"hostname": "192.168.1.54",//docker宿主机IP,cmd窗口使用ipconfig查看

"stopOnEntry": true,

"pathMappings": {

//"/data/htdocs/css": "${workspaceRoot}"

"/www/wwwroot/mysql.seifly.cn": "/Users/XXX/docker/centos_php/wwwroot/mysql.seifly.cn"

//data/htdocs/css docker容器中项目地址

//E:\\data\\htdocs\\css本地开发项目的绝对路径

},

"log": true,

"port": 9001,//docker镜像配置中开启对应端口

"externalConsole": false,

"ignore": [

"**/vendor/**/*.php"

]

},

php调试原理分析

vscode开启9001端口,相当于启动服务器,php连接vscode的服务器,发送消息进行调试。懂了这个原理出现问题就好解决了。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐