docker安裝使用xdebug的過(guò)程
docker安裝使用xdebug
1、需要先安裝PHP xdebug擴(kuò)展
1.1 到https://pecl.php.net/package/xdebug下載tgz文件,下載當(dāng)前最新穩(wěn)定版本的文件。然后把這個(gè)tgz文件放到php/extensions目錄下,記得install.sh中要替換解壓的文件名: installExtensionFromTgz xdebug-3.2.2
1.2 php.ini可以提前設(shè)置好一些xdebug配置信息:
xdebug.remote_enable = 1 xdebug.remote_handler = "dbgp" xdebug.mode=debug xdebug.client_host=host.docker.internal xdebug.client_port=9003 xdebug.idekey=PHPSTORM
1.3 修改php鏡像配置之后,重新構(gòu)建鏡像:docker compose build php。然后重新啟動(dòng)鏡像:docker compose up -d1.4 執(zhí)行phpinfo()之后,查看是否有生成xdebug信息。
2、修改phpstorm debug配置
參考文檔:
https://learnku.com/articles/51381
https://www.jetbrains.com/help/phpstorm/2021.3/configuring-xdebug.html
先說(shuō)自己踩到兩個(gè)坑:
1、配置Servers的時(shí)候,填寫(xiě)項(xiàng)目地址,需要填寫(xiě)docker容器里的目錄。比如(www/php_demo)
2、安裝xdebug不同版本對(duì)應(yīng)填寫(xiě)在php.ini的參數(shù)是不一樣的。
文檔地址:https://www.jetbrains.com/help/phpstorm/2021.3/configuring-xdebug.html
xdebug2版本:
xdebug.remote_enable = 1 xdebug.remote_handler = "dbgp" xdebug.remote_host=host.docker.internal xdebug.remote_port = 9003 xdebug.remote_log = /var/log/php/xdebug.log xdebug.idekey=PHPSTORM
xdebug3版本:
xdebug.remote_enable = 1 xdebug.remote_handler = "dbgp" xdebug.mode=debug xdebug.client_host=host.docker.internal xdebug.client_port=9003 xdebug.idekey=PHPSTORM
接下來(lái)詳細(xì)講一下PHPSTORM配置過(guò)程:
1、配置Server
2、配置Debug port
3、編輯項(xiàng)目的debug配置
4、啟動(dòng)debug
5、調(diào)試debug
5.1瀏覽器調(diào)試
1、在 Google 瀏覽器插件市場(chǎng)中下載 Xdebug
2、右鍵點(diǎn)擊 Xdebug 圖標(biāo)選擇選項(xiàng)點(diǎn)擊進(jìn)入配置頁(yè)面將 IDE Key 設(shè)置完整保存。
3、設(shè)置好就可以請(qǐng)求接口了,可以查看headers頭部是否有攜帶XDEUG_SESSION:
5.2、postman調(diào)試
到此這篇關(guān)于docker安裝使用xdebug的文章就介紹到這了,更多相關(guān)docker安裝使用xdebug內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Elasticsearch使用常見(jiàn)問(wèn)題解決方案
這篇文章主要介紹了Elasticsearch使用常見(jiàn)問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11Docker安裝mysql9.1.0的實(shí)現(xiàn)
本文主要介紹了Docker安裝mysql9.1.0的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-02-02Docker中Java基礎(chǔ)鏡像OpenJDK和OracleJDK使用方法
OpenJDK是Java社區(qū)的核心項(xiàng)目,由全球各地的開(kāi)發(fā)者共同參與開(kāi)發(fā)和維護(hù),OracleJDK在OpenJDK的基礎(chǔ)上添加了一些商業(yè)功能和工具,這篇文章主要給大家介紹了關(guān)于Docker中Java基礎(chǔ)鏡像OpenJDK和OracleJDK使用方法的相關(guān)資料,需要的朋友可以參考下2024-06-06Docker刪除鏡像詳細(xì)步驟和注意事項(xiàng)
Docker刪除鏡像是一個(gè)常見(jiàn)的操作,主要用于清理系統(tǒng)中不再需要的鏡像,以釋放存儲(chǔ)空間,刪除鏡像可以通過(guò)docker?rmi命令實(shí)現(xiàn),文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10利用?trap?在?docker?容器優(yōu)雅關(guān)閉前執(zhí)行環(huán)境清理的方案
這篇文章主要介紹了利用?trap?在?docker?容器優(yōu)雅關(guān)閉前執(zhí)行環(huán)境清理的問(wèn)題,需要在容器的啟動(dòng)腳本中,加入 trap 指令,來(lái)完成容器在退出前需要做的所有事情,本文通過(guò)腳本示例給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-12-12兩種方式創(chuàng)建docker鏡像的啟動(dòng)容器時(shí)區(qū)別介紹(總結(jié)篇)
這篇文章主要介紹了基于兩種創(chuàng)建docker鏡像的啟動(dòng)容器時(shí)區(qū)別總結(jié),第一種凡是用docker commit生成的鏡像啟動(dòng)的時(shí)候可以加載一個(gè)啟動(dòng)自己應(yīng)用的腳本,第二種用Docfile文件生成的鏡像時(shí),來(lái)啟動(dòng)容器就不用再加這個(gè)腳本了,具體詳情一起通過(guò)本文學(xué)習(xí)吧2016-10-10Docker多個(gè)容器不能有相同端口號(hào)的處理方案
這篇文章主要介紹了Docker多個(gè)容器不能有相同端口號(hào)的處理方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03Docker提示permission?denied錯(cuò)誤的解決方案
這篇文章主要給大家介紹了關(guān)于Docker提示permission?denied錯(cuò)誤的解決方案,出現(xiàn)這個(gè)問(wèn)題是因?yàn)樗拗鳈C(jī)的當(dāng)前運(yùn)行用戶和docker容器里面的運(yùn)行用戶不一致導(dǎo)致訪問(wèn)權(quán)限問(wèn)題,需要的朋友可以參考下2023-08-08