moby: Error response from daemon: can't initialize raft node: rpc error: code = 2 desc = could not connect to prospective new cluster member using its advertised address: rpc error: code = 14 desc = grpc: the connection is unavailable
Description
Steps to reproduce the issue: 1. 2. 3.
Describe the results you received:
Describe the results you expected:
Additional information you deem important (e.g. issue happens only occasionally):
Output of docker version
:
(paste your output here)
Output of docker info
:
(paste your output here)
Additional environment details (AWS, VirtualBox, physical, etc.):
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Comments: 23 (7 by maintainers)
It looks like you’re running the CS (commercially supported) version of Docker with UCP; if you have a support contract, it’s best to contact support directly
I found a workaround after disabling firewall didn’t work: Join the node as a worker, then promote to manager (for some reason worker does not get the same error)
Sounds like a connectivity issue between those machines / laptops. Think of;
I suspect this is an issue with the setup, not a bug
@christoph-hipp The meat of the error is this:
And
This would appear to mean that the new member is not accessible via the address defined in
--advertise-addr
passed in viadocker swarm join
. If you didn’t pass in a--advertise-addr
then you may need to.I have found a solution for this error in my platform. The ports was available in tcp and udp the telnet and the netcat was ok. The problem was with the proxy. I have added the IP of each nodes in the NO_PROXY value for docker and all is OK.
the workaround about this issue:
i have problem with similar error.
i have two nodes behind hardware firewall. nodes has local network.
lets init manager on A
docker swarm init --listen-addr=192.168.100.2
all is ok. lets gets mager join token
docker swarm join-token manager
then run join on B
docker swarm join --token TOKEN 192.168.100.2
by this word
can't initialize raft node
i found this discussion.and my problem solves this reciept: add
--advertise-addr
https://github.com/moby/moby/issues/32992#issuecomment-309424619 thanks @cpuguy83 !then i run on B
docker swarm join --advertise-addr 192.168.100.3 --token TOKEN 192.168.100.2
and all is ok now
This node joined a swarm as a manager.
as i understand, the 2377 port was opened only inside local network. and without
--advertise-addr
param, docker try to reach node A with wrong way (throuth its public ip or some thing like this) and gets bloced by firewall.Hope, it will be userfull. Cheers.
I have been looking all around the documentation and found the problem, it looks like swarm mode is available on mac but only as single node. This comes from FAQS
Thanks a lot for your help @thaJeztah