摘要:理論概述與在本機(jī)直接開發(fā)不同,環(huán)境下,大體是這樣。項(xiàng)目的運(yùn)行環(huán)境與上的,都是本機(jī)環(huán)境,相統(tǒng)一。當(dāng)然,也就沒有辦法進(jìn)行正確的信息顯示。注意為了保持統(tǒng)一,在容器配置時(shí),應(yīng)該使用來進(jìn)行磁盤映射。
在上一篇文章中,闡述了在phpstorm安裝xdebug。實(shí)際的開發(fā)過程中,由于歷史項(xiàng)目的存在,不同框架的存在,我們需要借助docker來快速的實(shí)現(xiàn)開發(fā)環(huán)境的部署與統(tǒng)一,本文將闡述如何在docker下實(shí)現(xiàn)項(xiàng)目的xdebug。
理論概述與在本機(jī)直接開發(fā)不同,docker環(huán)境下,大體是這樣。
宿主機(jī),即我們開發(fā)用的電腦。
我們看到,有以下幾點(diǎn)不同:
PHP環(huán)境不同本機(jī)開發(fā)時(shí)。項(xiàng)目的運(yùn)行環(huán)境與IDEA上的CLI,都是本機(jī)環(huán)境,相統(tǒng)一。
docker開發(fā)時(shí),本機(jī)環(huán)境與dokcer環(huán)境可能不統(tǒng)一。
本機(jī)開發(fā)時(shí),xdebug反饋的項(xiàng)目路徑,就是開發(fā)機(jī)的實(shí)際路徑。
docker環(huán)境下,xdebug將docker主機(jī)的路徑發(fā)送給宿主機(jī),但宿主機(jī)接收到,在本機(jī)上的此路徑上,找不到對(duì)應(yīng)的文件。當(dāng)然,也就沒有辦法進(jìn)行正確的信息顯示。
本機(jī)開發(fā)時(shí),遠(yuǎn)程主機(jī)地址就是本機(jī)地址,所以是127.0.0.1。
docker開發(fā)時(shí),遠(yuǎn)程主機(jī)地址,應(yīng)該是宿主機(jī)地址。
總結(jié)出上面的幾點(diǎn)不同后,開始實(shí)施也變得簡(jiǎn)單了。
統(tǒng)一PHPSTORM與docker的PHP環(huán)境配置 -> Languages .. -> PHP
CLI Interpreter ... -> + -> From Docker Vagrant
如果不清楚PHP的路徑的話,進(jìn)行DOCKER容器,使用whereis php。如果在service找不到docker,需要進(jìn)入配置 -> docker -> + -> 確定,則phpstorm會(huì)自動(dòng)為我們找到當(dāng)前存在的容器。映射路徑
配置 -> Languages .. -> PHP -> SERVICES -> +
前面提本地項(xiàng)目路徑,后面對(duì)應(yīng)docker項(xiàng)目路徑。
注意:為了保持統(tǒng)一,在docker容器配置時(shí),應(yīng)該使用volumes來進(jìn)行磁盤映射。修改遠(yuǎn)程地址
修改docker容器中的,php.ini中的xdebug.remote_host=host.docker.internal
host.docker.internal代表:宿主機(jī)添加項(xiàng)目配置信息 總結(jié)
弄懂原理,善于看日志才是解決問題的捷徑。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/27715.html
摘要:在對(duì)運(yùn)行在容器中的環(huán)境進(jìn)行可以通過網(wǎng)頁和腳本倆種方式進(jìn)行這里介紹下對(duì)容器中的腳本進(jìn)行。首先,容器中的環(huán)境需要有安裝好擴(kuò)展并且配置好這里對(duì)應(yīng)的名稱為。這是運(yùn)行的容器為使用訪問的配置目的是使能訪問到容器,這里由于是測(cè)試環(huán)境,沒做訪問控制。 在對(duì)運(yùn)行在容器中的環(huán)境進(jìn)行debug,可以通過網(wǎng)頁和腳本倆種方式進(jìn)行debug,這里介紹下對(duì)容器中的腳本進(jìn)行debug。 首先,容器中的php環(huán)境需要有...
摘要:在對(duì)運(yùn)行在容器中的環(huán)境進(jìn)行可以通過網(wǎng)頁和腳本倆種方式進(jìn)行這里介紹下對(duì)容器中的腳本進(jìn)行。首先,容器中的環(huán)境需要有安裝好擴(kuò)展并且配置好這里對(duì)應(yīng)的名稱為。這是運(yùn)行的容器為使用訪問的配置目的是使能訪問到容器,這里由于是測(cè)試環(huán)境,沒做訪問控制。 在對(duì)運(yùn)行在容器中的環(huán)境進(jìn)行debug,可以通過網(wǎng)頁和腳本倆種方式進(jìn)行debug,這里介紹下對(duì)容器中的腳本進(jìn)行debug。 首先,容器中的php環(huán)境需要有...
摘要:連接容器內(nèi)的進(jìn)行斷點(diǎn)調(diào)試進(jìn)行斷點(diǎn)調(diào)試盡管不像其他語言那樣方便,但是有些是有確實(shí)有其用處,比如調(diào)試循環(huán)內(nèi)的數(shù)據(jù)異常時(shí)。 PhpStorm連接容器內(nèi)的XDebug進(jìn)行斷點(diǎn)調(diào)試 php進(jìn)行斷點(diǎn)調(diào)試盡管不像其他語言那樣方便,但是有些是有確實(shí)有其用處,比如調(diào)試循環(huán)內(nèi)的數(shù)據(jù)異常時(shí)。在php于phpstorm都安裝在同一環(huán)境下時(shí),配置phpstorm的xdebug調(diào)試并不是多困難的事情,但是如果你使...
摘要:說明開發(fā)和調(diào)試環(huán)境為本地中的,環(huán)境為本地下的。再次在容器中抓取端口數(shù)據(jù)包連接的源地址已經(jīng)正確再次使用的斷點(diǎn)調(diào)試時(shí),控制臺(tái)如下所以,使用進(jìn)行遠(yuǎn)程調(diào)試時(shí),需要選擇合適的調(diào)試模式,在下建議使用遠(yuǎn)程模式。 首發(fā)于 樊浩柏科學(xué)院 我們經(jīng)常會(huì)使用 PhpStorm 結(jié)合 Xdebug 進(jìn)行代碼斷點(diǎn)調(diào)試,這樣能追蹤程序執(zhí)行流程,方便調(diào)試代碼和發(fā)現(xiàn)潛在問題。博主將開發(fā)環(huán)境遷入 Docker 后,Xd...
摘要:說明開發(fā)和調(diào)試環(huán)境為本地中的,環(huán)境為本地下的。再次在容器中抓取端口數(shù)據(jù)包連接的源地址已經(jīng)正確再次使用的斷點(diǎn)調(diào)試時(shí),控制臺(tái)如下所以,使用進(jìn)行遠(yuǎn)程調(diào)試時(shí),需要選擇合適的調(diào)試模式,在下建議使用遠(yuǎn)程模式。 首發(fā)于 樊浩柏科學(xué)院 我們經(jīng)常會(huì)使用 PhpStorm 結(jié)合 Xdebug 進(jìn)行代碼斷點(diǎn)調(diào)試,這樣能追蹤程序執(zhí)行流程,方便調(diào)試代碼和發(fā)現(xiàn)潛在問題。博主將開發(fā)環(huán)境遷入 Docker 后,Xd...
閱讀 3220·2021-11-19 09:40
閱讀 3016·2021-09-09 09:32
閱讀 805·2021-09-02 09:55
閱讀 1403·2019-08-26 13:23
閱讀 2424·2019-08-26 11:46
閱讀 1242·2019-08-26 10:19
閱讀 2070·2019-08-23 16:53
閱讀 1084·2019-08-23 12:44