[도커] Docker Machine Overview

DongGu·2021년 4월 18일
1

https://docs.docker.com/machine/
를 읽고 이해하려는 노력의 일환으로 작성한 글입니다.

도커 머신은 다음과 같은 이유로 사용되낟.

  • 맥OS나 윈도우OS에 도커를 설치하고 운영하려고
  • 다수의 원격 도커 호스트를 제공하고 관리하기 위해
  • 군집 클러스터를 제공하기 위해

What is Docker Machine?

Docker Machine은 가상 호스트에 Docker Engine을 설치하고, 호스트를 관리할 수 있는 도구이다. docker-machine 명령을 관리한다. 도커 머신을 사용하여 MacOS, Windows OS, 회사 네트워크, 데이터 센터, Azure, AWS, DigitalOcean과 같은 클라우드 제공자에 도커 호스트를 만들 수 있다.

docker-machine 명령어를 사용해서, 호스트를 관리하고, 시작, 검사, 중지 및 재시작하고, Docker 클라이언트 및 데몬을 업그레이드하고, Docker 클라이언트를 호스트와 통신하도록 구성할 수 있다.

작동 중이고 관리 중인 호스트에서 CLI 머신을 가리켜,docker 명령어를 호스트에 직접적으로 실행시킬 수 있다. 예를 들어 docker-machine env default를 실행하기, default라고 불리는 호스트를 가리키기 위해, env 환경설정을 마치기 위해 지시사항을 따르기 위해, docker ps, docker run hello-world를 실행하기 위해.

Docker v1.12 이전 버전을 Mac 또는 Windows에서실행할 수 있는 유일한 방법은 Machine이 유일하다. 베타 프로그램과 Docker v1.12를 시작으로 Mac용 Docker Desktop과 Windows용 Docker Desktop을 기본 앱으로 사용할 수 있으며, 최신 데스크톱과 랩톱에서 이 사용 사례를 더 잘 선택할 수 있다. 이 새로운 앱을 사용해보세요.

어디서 시작해야 할지 확실하지 않으면 도커에 대한 간단한 엔드 투 엔드 튜토리얼을 안내하는 https://docs.docker.com/get-started/ 를 참조하십시오.

Why should I use it?

Docker Machine을 사용하면 여러 원격 Docker 호스트를 다양한 Linux에 제공할 수 있다. 또한 Machine은 이전 항목에서 설명한 바와 같이 이전 버전의 Mac 또는 Windows 시스템에서 Docker를 실행할 수 있도록 한다.

Docker Machine은 다음 두 가지 광범위한 사용 사례를 가지고 있다.

  • 오래된 버전의 데스크탑 시스템을 가지고 있고, 맥이나 윈도우에서 도커를 실행시키고 싶은 경우

새로운 Mac용 Docker Desktop 및 Windows용 Docker Desktop 앱에 대한 요구 사항을 충족하지 않는 이전 Mac 또는 Windows 노트북 또는 데스크톱에서 주로 작업하는 경우 Docker Engine을 로컬로 실행하려면 Docker Machine이 필요하다.

  • 원격 시스템에 Docker 호스트를 제공하려는 경우

    Docker Engine은 기본적으로 Linux 시스템에서 실행된다. Linux 상자를 기본 시스템으로 가지고 있고 docker 명령을 실행하려는 경우, 도커 엔진만 쓰면 된다. 그러나 네트워크, 클라우드 또는 로컬에서 여러 도커 호스트를 프로비저닝하는 효율적인 방법을 원한다면 도커 시스템이 필요하다.

기본 시스템이 Mac, Windows 또는 Linux인지 여부에 관계없이 Docker Machine을 설치하고 여러 개의 도커 호스트를 제공하고 관리하기 위해 docker-machine 명령어를 쓸 수 있다. 자동으로 호스트를 생성하고, 호스트에 도커 엔진을 설치한 다음 docker 클라이언트를 구성한다. 각 관리 호스트("기계")는 도커 호스트와 구성된 클라이언트의 조합이다.

What's the difference between Docker Engine and Docker Machine?

사람들이 "도커"라고 말할 때 그들은 일반적으로 Docker Engine, Docker 데몬으로 구성된 클라이언트-서버 애플리케이션, 데몬과 상호작용하기 위한 인터페이스를 지정하는 REST API, 그리고 (REST API 래퍼를 통해) 데몬과 대화하는 CLI 클라이언트를 의미한다. 도커 엔진은 docker CLI의 아래와 같은 명령어를 수행한다. (예: docker run <image>, docker ps 작동 중인 컨테이너 리스트를 보기 위해, docker image ls 도커 이미지를 보기 위해 등등..

Docker Machine은 Docker 엔진이 장착된 호스트를 프로비저닝하고 관리하기 위한 툴이다. 일반적으로 로컬 시스템에 Docker Machine을 설치한다. Docker Machine은 자체 명령줄 클라이언트 docker-machine, 도커 엔진 클라이언트 docker 둘 다 가지고 있다. docker 시스템을 사용하여 하나 이상의 가상 시스템에 도커 엔진을 설치할 수 있다. 이러한 가상 시스템은 로컬화되거나 (Mac 또는 윈도우즈의 VirtualBox에서 시스템을 사용하여 도커 엔진을 설치하고 실행할 때) 또는 원격(시스템을 사용하여 클라우드 제공자에 도커 처리된 호스트를 프로비저닝할 때)일 수 있다. 도커 엔진이 장착된 호스트는 기계(machine)으로 불린다.

profile
코딩하는 신방과생

0개의 댓글