Docker Machine
Docker Machine 은 Docker Engine을 사용자 로컬 머신이 아닌
클라우드 컴퓨터, VM 을 비롯한 원격지의 서버에 설치할 수 있도록 돕는 도구이다.
1. Docker Engine이있는 호스트를 프로비저닝하고 관리하기위한 도구이다.
2. 일반적으로 로컬 시스템에 Docker Machine을 설치하고
원격지 서버에는 Docker Engine 을 설치하고 로컬과 통신한다.
즉 이 도구는 Virtual Machine 에 Docker 를 설치하고 이와 쉽게 통신하게 하는 프로그램이다.
Docker Machine 은 결국 VM 에 Docker 를 설치하고 이를 원격으로 제어해 주는 개념이다.
그럼 지금부터 Docker Machine 을 어떻게 사용할 수 있는지 살펴보기 위해
Docker Window 버전을 설치해서 실제 Virtual Machine 과
Docker Machine 이 연동되어 돌아가는 것을 확인해 보자.
Windows 에서 Docker 설치하기
https://store.docker.com 에 들어가서 Community Edition 을 선택한 다음
Docker Community Edition For Windows 로 들어가서
Windows 10 Professional 인 경우 그냥 인스톨 파일을 받고
아닌 경우 Docker Toolbox 를 받아야 한다.
옵션은 디폴트를 그냥 사용하면 된다.
Check Result
설치가 끝나고 아래와 같은 화면이 보이면 성공이다.
기본적으로 VirtualBox 를 내부적으로 설치하기 때문에 default machine 의 IP 를 할당해 준다.
실제로 VirtualBox 를 검색하면 특정 버전의 VirtualBox 가 설치된 것을 확인할 수 있고 띄워보면
아래와 같이 default 라는 Virtual Machine 이 생성되어 실행중인 것을 확인할 수 있다.
필요에 따라 할당된 리소스를 좀 더 줘서 사용하면 된다.
Booting
재부팅은 docker-machine start 를 타이핑해서 실행시켜야 한다.
$ docker-machine start
|
Envirionemnt Registration
그리고 생성된 Machine 이름인 default 를 이용해 docker-machine env 명령을 실행시킨다.
$ docker-machine env default
|
그러면 맨 아래 Run this command .... 이라는 부분이 있는데 여기 나오는 Command 를 실행시켜 준다.
일단 최초 노드인 Default 에도 Docker Engine 이 설치되어 있다.
그리고 Docker Machine 은 Demon 으로 설치되어 있다.
Create Node
그리고 Docker machine 의 create 명령을 통해 확장한 경우
해당 이미지에 Docker 엔진이 설치되어 있는지 확인해보자.
$ docker-machine create node1
$ docker-machine ssh node1
$ docker-version
|
Environment Registration
그리고 생성된 Machine 이름인 node1 를 이용해 docker-machine env 명령을 실행시킨다.
$ docker-machine env node1
|
마찬가지로 맨 아래 Run this command .... 이라는 부분이 있는데 여기 나오는 Command 를 실행시켜 준다.
Result
이와 같이 VM 에 설치된 이미지에 Docker Engine 이 설치되었고 ssh 명령으로 간단히 접근 가능한 것을 확인하였다.
이와 같이 이 Docker Machine 을 사용하면 따로 서버를 만들지 않아도
가상 이미지를 이용한 Docker 클러스터링 도구를 사용해 볼 수 있다.
'Container > Docker' 카테고리의 다른 글
22. Docker Build Pipeline (0) | 2020.01.14 |
---|---|
21. Docker CLI Dashboard (0) | 2020.01.14 |
19. Docker Private Registy (0) | 2020.01.14 |
18. Docker Security (0) | 2020.01.14 |
17. Docker Volume (0) | 2020.01.14 |