亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 VSCode 中使用 Docker 調試 PHP

在 VSCode 中使用 Docker 調試 PHP

PHP
繁星coding 2022-10-09 17:26:57
看起來一切正常,但 VSCode 并沒有停止調試。我有一個運行 PHP 映像的 docker 容器。我需要做什么才能在斷點處停下來?我在日志中看不到錯誤,恰恰相反,他們似乎在說斷點配置得很好,并且代碼運行正確。容器的 IP為 172.22.0.2,我的主機的 IP為 172.22.0.1文件xdebugo.so存在于容器內: /usr/local/lib/php/extensions/no-debug-non-zts-20190902/xdebug.so主機host.docker.internal已正確設置。我使用以下方法構建了我的圖像:docker build -t phpdebug:5 .該文件/usr/local/etc/php/conf.d/xdebug.ini存在于正在運行的容器中。啟動.json{    "version": "0.2.0",    "configurations": [        {            "name": "Listen for XDebug",            "type": "php",            "request": "launch",            "port": 9000,            "log": true,            "externalConsole": false,            "pathMappings": {                "/": "${workspaceRoot}/"            }        }    ]}碼頭工人-compose.ymlversion: '2'services:  app:    restart: 'no'    image: phpdebug:5    command: php -S 0.0.0.0:8000    ports:      - "8000:8000"    volumes:      - phpdata:/app    environment:      PHP_EXTENSION_XDEBUG: 1volumes:  phpdata:    driver: local    driver_opts:      type: 'none'      o: 'bind'      device: '/home/element/php/tuto'/usr/local/etc/php/conf.d/xdebug.inizend_extension="/usr/local/lib/php/extensions/no-debug-non-zts-20190902/xdebug.so"xdebug.default_enable=1xdebug.remote_enable=1xdebug.remote_port=9000xdebug.remote_handler=dbgpxdebug.remote_connect_back=0xdebug.remote_host=host.docker.internalxdebug.idekey=VSCODExdebug.remote_autostart=1xdebug.remote_log=/usr/local/etc/php/xdebug.log/etc/hosts127.0.0.1   localhost::1 localhost ip6-localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters172.22.0.2  d484e93eed2a172.22.0.1      host.docker.internalDockerfile:FROM phpRUN pecl install xdebugRUN ip -4 route list match 0/0 | awk '{print $3 "host.docker.internal"}' >> /etc/hostsCOPY custom.ini /usr/local/etc/php/conf.d/xdebug.ini
查看完整描述

1 回答

?
長風秋雁

TA貢獻1757條經驗 獲得超7個贊

日志顯示在<init數據包中:


file:///app/index.php

所有斷點的配置如下:


file:///home/element/php/tuto/result.php

這表明您所做的路徑映射不正確:


"pathMappings": {

    "/": "${workspaceRoot}/"

}

在您的情況下,我認為應該是以下內容,前提是這兩個目錄都有一個index.phpandresult.php文件。如果沒有,您需要調整第二個路徑,使其成為包含index.php和result.php文件的路徑。


"pathMappings": {

    "/app": "/home/element/php/tuto"

}


查看完整回答
反對 回復 2022-10-09
  • 1 回答
  • 0 關注
  • 334 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號