在localhost和docker上运行的服务之间的通信

时间:2018-11-26 06:33:41

标签: docker service connectexception

我的机器上运行着2个服务和1个Java应用程序,我们称它们为A,B,C:

A:是在端口39000上运行的服务,并且在docker容器内运行。

B:是在本地主机上的端口49000上运行的服务。

C:是在本地主机上运行的应用程序。

应用程序C与服务A和服务B进行通信。它还在启动之前与这两个服务建立了握手。

问题:C能够与A建立握手,但不能与B建立握手。

异常:localhost:49000的java.net.ConnectException

更多信息:

1)我的机器向服务B发出的卷曲请求已正确提供。

2)在docker升级后,我开始看到此问题。我当前的Docker版本是:Docker版本18.09.0,构建4d60db4

3)lsof | grep 39000:

com.docke 3503 cghai 20u IPv4 0x776c731898d7eabd 0t0 TCP *:39000(LISTEN)

com.docke 3503 cghai 21u IPv6 0x776c731893ca834d 0t0 TCP localhost:39000(LISTEN)

4)lsof | grep 49000:

java 3260 cghai 7u IPv6 0x776c731893cb634d 0t0 TCP *:49000(LISTEN)

0 个答案:

没有答案