簡體   English   中英

在Docker中調試NodeJS應用程序

[英]Debug a NodeJS application inside Docker

我正在將NodeJS應用程序移至docker,最后遇到的問題是調試該應用程序。

我的設置:OSx,boot2docker,docker(基於centos),WebStorm(作為IDE)和調試器。

這是我現在擁有的:
將5858從Docker轉發到boot2docker:

docker run -p 5858:5858 ...

將5858端口從boot2docker轉發到主機:

VBoxManage controlvm boot2docker-vm natpf1 "boot2docker5858,tcp,127.0.0.1,5858,,5858"

相同的設置可以將我的應用程序端口引到主機上。 另一方面,如果從docker容器外部進行訪問,端口5858似乎沒有反應。
在docker容器中,它工作正常。

任何想法可以做這項工作嗎?

好吧,我終於弄清楚了。
看起來,節點僅偵聽127.0.0.1:5858。

為了使其能夠在所有端口上進行偵聽,我在碼頭上安裝了HAProxy,它將請求從0.0.0.0:5859轉發到127.0.0.1:5858。

如果有人需要,這是HAProxy配置:

listen l1 0.0.0.0:5859
    mode tcp
    timeout client 180000
    timeout server 180000
    timeout connect 4000
    server srv1 127.0.0.1:5858

然后添加到您的Dockerfile中:

COPY haproxy.conf haproxy.conf
RUN haproxy -D -f /haproxy.conf

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM