docker xdebug lnmp[/caption] 注意: 1. 需要php容器需要对外访问一个指定的xdebug接口(在php.ini的xdebug中配置好)
zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so
xdebug.enable=1
xdebug.remote_enable=1
xdebug.remote_connect_back=1
xdebug.idekey=PHPSTORM #这个是约定的调试码,需要在phpstorm里面设定
xdebug.remote_host=192.168.1.100 #这个是宿主ip
xdebug.remote_port=19001 #这个是xdebug对编辑器链接的端口
xdebug.remote_log=/var/log/xdebug_remote.log
2. nginx的对应的配置里面,需要增加一个fastcgi_param remote_addr
location ~ \.php {
include fastcgi_params;
fastcgi_pass php:9000;
fastcgi_param RUNTIME_ENVIROMENT development;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param REMOTE_ADDR "192.168.1.100"; #这个是宿主ip,至关重要,我在这里浪费了两三天时间才设置对
}
3. phpstrom的设置
开始调试前,需要把右上角的那个电话一样的按钮点击一下,变成截图的那样,然后在点臭虫按钮开始debug。。。。
安利下我已经部署好的docker环境(目前需要自己手动修改宿主ip,后续会优化成自动获取并替换): https://github.com/mmfei/docker_php_nginx_mysql_redis_memcached