What is docker?

Docker is a platform to develop, deploy, and run applications inside independent and isolated environments. These environments are then called containers. This will let the developer run a container on any machine.

Simply docker solves the problem of **‘’It works on my machine’’**.

As you can see, with Docker, there are no more dependency or compilation problems. All you have to do is launch your container, and your application will launch immediately.

If you want to learn more about this excellent platform, the “Get Started” section of Docker Docs is a great place to start.

Let’s move onto the topic.

If your application is containing more than one component (multiple containers), how do you manage such a situation easily? It means you need to run those multiple containers separately. How do you manage their network connectivity, volume binding, port binding, etc. from a central point?

When using Docker widely, the management of several different containers quickly becomes cumbersome.

Image for post

Introducing docker-compose

Docker Compose is a tool that helps us overcome this problem and efficiently handle multiple containers at once. Also used to manage several containers at the same time for the same application.

This tool can become very powerful and allow you to deploy applications with complex architectures very quickly.

Image for post

#containerization #docker-compose #dockerfiles #docker-image #docker

Run multi-container Docker applications with a single command
1.50 GEEK