我在Docker中运行node js服务器,我希望能够将我主机上的chrome开发工具连接到docker上的node js以进行调试。
这似乎是可能的,因为我在这里跟随帖子:Why Chrome can't inspect nodejs code in Docker container?
实际上,通过将主机上的端口9229:9229和docker内的端口相互绑定,并在docker中运行命令,当我启动node js时
node --inspect-brk=[0.0.0.0] app
我能够将chrome开发工具连接到node js,但是我的断点都不起作用-我只能在chrome中看到控制台日志。
如何让断点工作?我错过了什么?
2条答案
按热度按时间qxsslcnc1#
为了回答我自己的问题,我从来没有让上面的工作,但我确实设法使用VS代码在Docker容器中进行调试。
我在这里使用了另一种解决方案:https://keylocation.sg/our-tech/debugging-nodejs-in-docker-using-node-inspector
看来有人也找到了解决办法:Why Chrome can't inspect nodejs code in Docker container?
rqcrx0a62#
我在Windows上用
docker compose
使用WSL 2:Dockerfile
:docker-compose.yml
:我运行
docker compose up
,然后运行docker compose stop <service>
来停止正在调试的服务。然后,我使用调试选项和端口Map再次启动服务:
然后,我可以在Chrome中的chrome://inspect/#devices中看到该服务,并选择inspect。