I have a QPID daemon running inside of a Docker container. I have C++ code that 
should connect to this daemon, and in the past, it was able to, but it suddenly 
stopped being able to connect when the C++ code was run on the host machine.

Trying to connect to the daemon on the container from the host throws a 
qpid::messaging::TransportFailure expection. When I launch qpidd with -t for 
trace level logging, I see the following each time a connection is attempted:

2017-07-12 15:59:33 debug RECV [172.17.0.2:5672-172.17.0.1:37696]: INIT(0-0)
2017-07-12 15:59:33 debug SENT [172.17.0.2:5672-172.17.0.1:37696]: INIT(0-10)

I would guess that this has something to do with the ActiveMQ protocol, but I 
am not sure.

I don't think the fault lies with the code, because the exact same code running 
on the same container as the broker is able to connect to the QPID broker. I 
know that the daemon is visible from the host machine because curl finds the 
daemon

Why can I not connect to the daemon from the host, even though I can from the 
container that the daemon is running in?

It may be worth noting that the versions of QPID on the host are different than 
the container. The host has the latest version on CentOS 7 (1.36.0) while the 
container has the latest version on Ubuntu 16.04 (0.16).

Thanks

Matt

Reply via email to