Why use orchestration tools with Docker

Introduction

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".

What is an orchestration tool?

The orchestration tool is a tool for running multiple Docker.

Reasons to use an orchestration tool

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.

Commonly used orchestration tools

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 conclusion

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.

Recommended Posts

Why use orchestration tools with Docker
Why we use Docker
Use Puphpeteer with Docker
Use ngrok with Docker
[Docker] Use whenever with Docker + Rails
Use cuda11.0 with pytorch using Docker
[Rails] How to use rails console with docker
Use Symbolic Link with Docker multi-stage builds
Use ZStandard with .NET Core + Docker (Alpine)
Why use Docker? Docker recommendations for small cis tubes
Use Amazon ECR Credential Helper with Docker Desktop
How to use docker compose with NVIDIA Jetson
How to use nginx-ingress-controller with Docker for Mac
Launch MariaDB with Docker
Rails deploy with Docker
Run Pico with docker
Explode Docker with WSL2
Use XVim2 with Xcode 12.0.1
Use CentOS with LXD
Operate Emby with Docker
Try WildFly with Docker
Run Payara with Docker
Use webmock with Rspec
[Docker] Connection with MySQL
Php settings with Docker
Getting Started with Docker
Use WebJars with Gradle
Use jlink with gradle
Disposable PHP with Docker
Install Composer with Docker
Why can I use the rails command installed with gem? ??
[PHP8] Install and use PECL YAML function (YAML parser) with Docker
Use docker's in-container shell with cygwin [docker exec -it bash]
How to use mysql with M1 mac Docker preview version
You are required to use winpty with docker exec [Windows]
Pytorch execution environment with Docker
Use Lambda Layers with Java
Use Thymeleaf with Azure Functions
Simply consider "why use interface"
Deploy with EC2 / Docker / Laravel
Run TAO Core with Docker
Docker management with VS Code
Use pfx certificate with Okhttp3
Set up GitLab with docker
Use Bulk API with RestHighLevelClient
Use SDKMAN! With Git Bash
Run Rails whenever with docker
Get started with DynamoDB with docker
Docker autostart settings with wsl2
[Docker] Rails 5.2 environment construction with docker
Use multiple databases with Rails 6.0
Spring Boot starting with Docker
Build docker environment with WSL
Version control CocoaPods with Docker
Use Spring JDBC with Spring Boot
Web application built with docker (1)
I tried BIND with Docker
Use Ruby with Google Colab
Use SpatiaLite with Java / JDBC
Use log4j2 with YAML + Gradle
React environment construction with Docker