Docker-compose 사용해보기
Created:
docker-compose를 사용해서 엘라스틱서치, 키바나를 설치해 보고자 한다.
es, kibana는 6.6.0버전으로 설치를 진행하고 docker-compose 버전은 3을 사용하였다.
docker-compose를 사용하면 여러개의 컨테이너를 한번에 생성할 수 있고 각 컨테이너끼리 링크연결도 보다 쉽게 할 수 있다.
docker-compose 작성
적당한 폴더를 생성하고 docker-compose.yml 파일을 생성 후 아래와 같이 작성한다.
version: "3"
services:
elasticsearch:
container_name: elasticsearch
image: docker.elastic.co/elasticsearch/elasticsearch:6.6.0
environment:
- discovery.type=single-node
ports:
- 9200:9200
- 9300:9300
restart: always
kibana:
container_name: kibana
image: docker.elastic.co/kibana/kibana:6.6.0
ports:
- 5601:5601
links:
- elasticsearch:elasticsearch
restart: always
version
: docker-compose 버전을 의미한다.
container_name
: 컨테이너 이름을 지정할 수 있다.
environment
: 컨테이너의 환경을 설정할 수 있다.
links
: 각 컨테이너 끼리 링크연결을 할 수 있다. 여기서는 키바나가 엘라스틱서치 컨테이너를 바라 볼 수 있도록 링크설정을 하였다.
restart
: 도커 데몬이 시작 될때 자동으로 컨테이너가 실행 되도록 always
로 설정해 주었다.
작성한 docker-compose 실행
작성한 내용 대로 각 컨테이너를 생성 및 백그라운드로 실행한다.
docker-compose up -d
-d
: 백그라운드 모드로 실행
잘 실행되었는지 확인
docker ps
docker-compose.yml 내용을 수정한뒤에 다시 실행하게되면 기존의 컨테이너는 삭제되며 다시 생성된다. 이때 기존 컨테이너의 내부 데이터는 날라가니 주의해야 한다.
마치며
삽질하면서 적용해 보았는데 아직 도커 입문단계라.. 혹시 docker-compose를 좀더 간단하게 적용할 수 있는 방법이 있다면 댓글 부탁 드립니다!
Comments