Node.js Intellij中的远程调试nodejs应用程序,Docker已分配端口

Node.js Intellij中的远程调试nodejs应用程序,Docker已分配端口,node.js,windows,docker,debugging,intellij-idea,Node.js,Windows,Docker,Debugging,Intellij Idea,我想使用运行在Docker上的Intellij和node.js解释器开始调试node.js应用程序。运行应用程序时,当我尝试调试时,会出现以下错误: 运行'index.js'时出错 com.github.dockerjava.api.exception.InternalServerErrorException: {“message”:“驱动程序无法在上编程外部连接” 彭加勒 (a17137973880d1be7c6a74fc142184fdda31e0dec8ebd539b09d9dbe4cf7

我想使用运行在Docker上的Intellij和node.js解释器开始调试node.js应用程序。运行应用程序时,当我尝试调试时,会出现以下错误:

运行'index.js'时出错 com.github.dockerjava.api.exception.InternalServerErrorException: {“message”:“驱动程序无法在上编程外部连接” 彭加勒 (a17137973880d1be7c6a74fc142184fdda31e0dec8ebd539b09d9dbe4cf70014): 启动userland代理时出错:0.0.0.0:55578的绑定失败:端口为 已分配“}

远程解释器是根据配置的。我已经创建了一个新的Node.js运行/调试配置,并输入了以下数据: .

调试不工作的原因可能是什么?

我使用:

  • Intellij思想终极版。2019.1.4预览
  • intellijnodejs插件v。191.7479.1,NodeJS远程解释器插件v。191.6014.8和Docker插件v。191.7141.44
  • Docker桌面社区v。2.0.0.3
编辑:回复评论:

本地调试工作。我试图运行的文件(index.js)只包含
console.log('Hello world!')
,因此我不会自己生成任何子进程。我的主机系统使用Windows 10 Pro作为操作系统,因此为了检查主机系统上打开的端口,我使用了
netstat-an | find“55578”
,它没有返回任何内容。此外,如果我尝试从命令行手动运行docker,使用
docker run-it-p55578:55578节点
,所有操作都会运行,并且不会出现错误

此外,每次尝试远程调试时,Intellij在错误消息中给出的端口号似乎是随机的高端口号。在收到错误消息后,我尝试查找打开的端口,但从未找到一个打开的端口,其编号由Intellij报告,并且这些端口确实出现在输出中:

我的运行/调试配置:

我的Docker配置(我必须检查“在tcp://localhost:2375 Docker配置中的“无TLS”,使Intellij和Docker一起玩):


编辑:当我在“运行/调试配置”Intellij窗口(per)中将brk=0.0.0:55432作为“节点参数”添加时,容器和程序将启动,但调试似乎不起作用(例如,程序不会在断点处停止)。

更新到Intellij v后。2019.2我能够使用问题中已经提到的方法使容器调试工作

我已经在运行/调试配置(见下图)中的节点参数选项中添加了一个参数
——inspect brk=0.0.0:55432
,一切似乎都正常工作,包括断点。

您尝试使用不同的端口号了吗?@PrakashKrishna据我所知,Intellij在单击“调试”按钮时随机选择了端口号。我可以在哪里设置它?netstat | grep 55578的结果是什么?此外,您的应用程序是否生成子进程?您能在本地(使用本地解释器)进行调试吗?@lena我已经编辑了我的问题,并添加了您要求的详细信息。请提供node.js运行配置和docker配置的屏幕截图