最近學習在 windows 上使用 laradock,花了幾天時間各種找資料學習外加設定,終於把 vscode 和 laradock 的
xdebug
連線上了。
安裝 Xdebug 擴充套件
開啟 laradock 目錄下的 .env
,搜尋 WORKSPACE_INSTALL_XDEBUG
和 PHP_FPM_INSTALL_XDEBUG
都改為 true
。
WORKSPACE_INSTALL_XDEBUG=true
PHP_FPM_INSTALL_XDEBUG=true
我的 Xdebug 配置
編輯 laradock/workspace/xdebug.ini 以及 laradock/php-fpm/xdebug.ini,我的具體配置如下:
xdebug.remote_host=docker.for.win.localhost
xdebug.remote_connect_back=0
xdebug.remote_port=9000
xdebug.idekey=PHPSTORM
xdebug.remote_autostart=1
xdebug.remote_enable=1
xdebug.cli_color=0
xdebug.profiler_enable=0
xdebug.profiler_output_dir="~/xdebug/phpstorm/tmp/profiling"
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.var_display_max_children=-1
xdebug.var_display_max_data=-1
xdebug.var_display_max_depth=-1
然後重新建立映象和容器,時間主要花在這裡了,尤其 apt-get
時間相當長,光是這裡 build
花了我至少 1 個多小時,(╯‵□′)╯︵┻━┻$ docker-compose up -d nginx mysql redis workspace
我的 VS Code設定
vscode 主要是 pathMappings
這裡,我把本地專案對映到了 /var/www/
目錄下,例如 /var/www/p2p
、 /var/www/bbs
{
// 使用 IntelliSense 瞭解相關屬性。
// 懸停以檢視現有屬性的描述。
// 欲瞭解更多資訊,請訪問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"log": true,
"pathMappings": {
"/var/www/p2p": "${workspaceRoot}",
}
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
}
]
}
執行一下 Xdebug,連線成功,本來都要放棄使用 VS Code 的 ╮(╯▽╰)╭ ,現在終於不用換 PhpStorm 啦