This article is for learning why Docker uses orchestration tools. ・ The word "orchestration tool" appears in various Docker explanations, but it is difficult to understand what it is. ・ Understand "orchestration tools".
The orchestration tool is a tool for running multiple Docker.
The quickest way to find out why you use an orchestration tool is to know what Docker can't do. Docker is a tool that allows you to package a specific environment and guarantee portability to work in any environment. The things that Docker can't do and the features that it doesn't have are as follows.
--Deploy to multiple Nodes --Scaling --Container update --Automatic recovery in case of failure
In other words, the reason for using the orchestration tool is that the Docker function alone causes operational problems in order to operate the service. Therefore, it is used in combination with Docker to complement the functionality with orchestration tools and enable the service to be provided.
docker-compose A commonly used orchestration tool.
swarm A tool for clustering. Use Docker Compose and Docker Swarm together.
ECS(Elastic Container Service) An orchestration tool developed by AWS.
Kubernetes An orchestration tool developed by Google.
In order to use Docker in a production service, I found that I used Docker + orchestration tool to prepare for failures.
Docker is an essential skill for programmers in learning Docker, Taking this article into consideration, Docker skills are not enough to operate the development environment, but orchestration tool skills are required at the stage of operating the production service. So it's a good idea to acquire Docker skills for programmers and Docker + orchestration tool skills for infrastructure engineers.