Docker Community Forums

Share and learn in the Docker community.

How to push multiple images which make a single "app"


#1

I have a MySQL image, a Tomcat image, and a Java web service that all need to work together. I tried pushing all three images to docker hub, but they’re disconnected and the “docker run” doesn’t run the entire app with all three dependencies. I’ve tried various combinations of the push command so maybe I’m just doing something wrong. I have a repo called: “services” I’d like to push all three images into so they can work together. This all assumes I am thinking about this correctly. Please advise.


#2

I am afraid the behavior of DockerHub is correct, but your expection on how this should work is not.

How should an image know by itself that it is part of a composition? You can prepare your images to support runtime configuration to support a dynamic configuration to access other containers. Though, this is a different thing.

You have to push the images independently. You need to create a repo per image, which in your case need to be under the same namespace (either user or group).

Maybe this helps in providing your orchestration to others:


#3

I’m just looking for the same behavior on docker hub as I get locally: containers that can talk to each other. An actual example would help. Thanks.


#4

Usualy the Docker Hub description and additionaly provided compose files on Github are used.
Docker Hub is image centric. You need to externalize “the glue”. This is how it works. If you don’t like how it works: raise issues!

There is an established solution: continue to commit on Dockerhub and start using Kubernets + Helm Charts. Helm Charts are a well established and broadly accepted.


#5

Appreciate your reply. I’m not saying I don’t like the DH behavior. My posting was that what works locally doesn’t work on DH probably (I’m sure) because of something I’m doing wrong.

Therefore, I was just looking for an actual example showing how to “glue” multiple images on DH.

Thanks,