【问题标题】:Debugging Drupal on docker container using Atom使用 Atom 在 docker 容器上调试 Drupal
【发布时间】:2017-01-20 07:37:57
【问题描述】:

我在这里有点受阻。 我正在使用带有 Atom 的 Ubuntu 14 机器,我正在开发一个基于 Drupal 的系统。系统安装在我使用 Vagrant 在 VM 上运行的 docker 容器上。 我可以完美地使用 Atom 并运行本地服务器来检查更改。问题是使用 kint/dump 是不够的,所以我决定在 docker 容器上安装 xdebug,在主机上安装 php-debbuger。我还在 Firefox 上安装了“最简单的 Xdebug”。但是,他们似乎没有建立联系。

到目前为止,我遵循了以下步骤:

  • 来自码头工人
    • pecl 安装 xdebug
    • 插入到 php.ini

      zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so

    • 在 xdebug.ini 上插入

      xdebug.remote_enable=1 xdebug.remote_autostart=0 xdebug.remote_connect_back=1 xdebug.remote_port=9000 xdebug.remote_log=/tmp/php5-xdebug.log xdebug.remote_handler=dbpg

  • 从主机,在 ../provision/docker-compose.yml 上,添加以下内容:

    环境:
    XDEBUG_CONFIG: remote_host={{192.168.33.33}}

  • 在 Firefox 的插件中,将 IDE 密钥设置为

    xdebug.atom

  • 来自 Atom,在 php-debug - settings - Path Maps 上

    /url;/home/myname/www/path/cms/

我对最后一个感到困惑,但我尝试了不同的方法,并且我确信还有其他设置要做。我错过了什么?

【问题讨论】:

    标签: docker vagrant xdebug atom-editor drupal-8


    【解决方案1】:

    我使用 Docker 和 XDebug 的经验是,您必须将 IP 地址放入 Docker 网络中。

    执行docker inspect [your_container_name] | grep -i gateway(当它运行时)并将该 IP 用于xdebug.ini 文件中的远程主机配置。

    如果您想进一步调试,我建议将远程主机配置直接放在xdebug.ini 中,以确保正确传递环境变量。

    【讨论】:

    • @patocardo 您能否在我回答后使用有关您尝试过的最新信息来编辑您的问题?如果不确切了解您的配置,很难提供帮助。
    【解决方案2】:

    安装 php-debug 后,将以下设置放入您的 Atom 配置 (config.cson):

    "*":
      "php-debug":
        PathMaps: [
          "/path/to/app/in/docker;/path/to/app/in/local"
        ]
        ServerPort: 9000
      welcome:
        showOnStartup: false
    

    要获取更多信息和说明,您可以阅读此post

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-17
      • 1970-01-01
      • 2023-03-09
      • 2016-01-04
      • 1970-01-01
      • 2020-01-15
      • 2017-02-28
      相关资源
      最近更新 更多