Sharing namespaces within Docker

Consider that application A is an app that provides a form of clustering with an allowed designated number of slaves to join on this cluster. Applications B, C, and D would need to join this cluster in order to function properly. What I would like to do is have application A inside a container, while having applications B, C, and D setup within their own containers. Exposing ports is not an option for this. This should be done without networking functionality as there is no modifying the code for applications A, B, C, and D. I simply would like to be able to have B, C, and D be able to access the application A from within their own containers. Perhaps this is not even possible, as this is the point of Docker / containers, isolation, however, considering docker currently has the –net option to share the host networking stack I am sure this could not be to difficult implement?

  • Some questions about Docker version and module versions
  • Cannot Access Docker Phpmyadmin via Port
  • Can not start Docker 1.9.1
  • Docker Compose for Rails
  • Running private docker registry v2 on AWS ECS with SSL and basic auth
  • Why php development server hangs with docker compose?
  • Why is docker build taking so long to run?
  • can i run an intermediate layer of docker image?
  • Consul and Spring Boot services in Docker - not deregistering
  • mysql docker container get remote host: Connection refused after container running
  • Where store an API Token for Jenkins used in Dockerfile
  • How can I access my docker maria db?
  • One Solution collect form web for “Sharing namespaces within Docker”

    If all containers run on one machine, then --link is intended for this sort of use-case. However applications have to be able to use different ports configured by environment variables.

    There is a lot of activity on the Docker GitHub at the moment discussing clusters, groups and networking, so you should expect better native support in future.

    You could consider ‘weave’, which creates a virtual overlay network where all your containers, even in different datacenters, can talk to each other as if they were on the same Ethernet switch. Please note I work on weave.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.