1. 개요
<Docker 가상 환경 구축 입문>의 <Chapter 5. Docker Machine을 사용하여 Docker용 가상머신을 작성하자>를 읽고 정리한 내용으로,
이번 문서의 내용은 Docker Machine에 대한 소개입니다.
2. Docker Machine이란
- Docker Machine은 Docker 실행을 위한 가상 머신을 작성하거나 관리하기 위한 커맨드 라인 툴
- 로컬 환경 뿐 아니라 클라우드 제공자(AWS, GCP) 서비스 상에도 Docker Host를 띄울 수 있음
- 가상화 소프트웨어는 Mac의 경우 VirtualBox, Windows의 경우 Hyper-V를 사용
3. docker-machine 커맨드
- docker-machine을 사용하여 간단히 Docker Host를 구축할 수 있음
-
Docker Machine 목록 확인
$ docker-machine ls
-
Docker Host 작성
$ docker-machine create [Host명]
-
조작 대상이 될 Docker Host 지정
$ docker-machine env [Host명]
- docker-machine으로 기동한 Docker Host로 컨테이너를 실행한 경우 컨테이너에 접속하기 위해 가상 머신의 IP 주소를 지정해야 함
4. AWS에 Docker Host 프로비저닝하기
- Docker Machine을 사용하여 EC2 가상 머신을 작성하기 위해 사전에 액세스 키를 준비해야 함
- Docker Machine을 사용할 때, AWS의 액세스 키를 사용하여 EC2의 인스턴스를 기동하여 Docker Host를 구축할 수 있음
-
EC2 상의 Docker Host도, 기존과 동일하게 Docker Machine의 커맨드로 컨테이너를 실행할 수 있음
-
docker-machine를 활용한 EC2 프로비저닝 커맨드
$ docker-machine create \ --driver amazonec2 \ --amazonec2-open-port [포트번호] \ --amazonec2-region [리전명] \ --amazonec2-subnet-id [서브넷ID] \ [Host명]
- 필요 없는 인스턴스는 docker-machine rm 커맨드로 삭제하고 과금되지 않도록 주의