-
Notifications
You must be signed in to change notification settings - Fork 18.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Services published ports are unreacheable from others/same service containers. #25463
Comments
ping @sanimej could you have a look? |
Any update on this? It looks like it's blocking lots of use cases such as running |
This has been fixed by libnetwork #1398 and will be available in docker master through #25962 |
awesome! Thanks for the heads up @sanimej! |
@sanimej moby/libnetwork#1398 is on the 1.13 milestone; is there a solution for a possible 1.12.2 release? |
Sorry, meant #25962 |
@thaJeztah Facing the same, can't wait to see that fixed. In the meantime, did anyone tested that it's properly solving the problem if building from sources (master)? |
@thaJeztah #25962 brought in |
Note for 1.12.2: we need to make sure moby/libnetwork@9dfce0b is in. |
Closing this as this is fixed in #25962 |
@mrjana should we wait for the vendor PR for 1.12.2? Or was that opened / merged already? |
@thaJeztah Yeah vendor PR for 1.12.2 was merged but shouldn't this be closed regardless because this is fixed in master via #25962 long time ago? |
@mrjana yes, in general, I agree; purely so that we don't loose sight (it happened before), but if it's fixed in the 1.12.2 branch, closing is fine 👍 |
Output of
docker version
:Output of
docker info
:When a service is publishing a port, the docker host/swarm port associated to the service is not reachable from other containers.
To reproduce
create a docker-machine
initialize the single manager swarm
create a service replying to requests with the container hostname, published to port 80
then, testing the container reachability:
I tried reaching the service from another container, and placing them in a dedicated overlay network but the results were unchanged.
I checked the docker-machine network configuration and I noticed this iptables rule:
which seems to be the culprit.
In fact, if I delete it the container becomes again reachable on the external endpoint
I imagine this rule as used for mantaining isolation. If so I think it must have exceptions for published ports.
Here are the docker-machine routing and iptables configuration:
The text was updated successfully, but these errors were encountered: