Docker Compose
도커는 복잡한 설정을 쉽게 관리하기 위해 yaml 방식의 설정파일을 이용한 Docker Compose라는 툴을 제공한다. (Docker for Mac을 설치했으면 자동으로 설치됨)
Docker Compose를 이용하면 여러 개의 컨테이너(container)로 구성된 애플리케이셔을 하나의 파일에 정의해놓고 한 번에 올리거나 내릴 수 있음
Docker Compose 커맨드 사용법
Docker Compose의 커맨드는 공식 사이트에서 더 자세한 내용을 확인할 수 있다. (https://docs.docker.com/compose/reference/)
여러 개의 컨테이너(container)로 구성된 애플리케이션을 관리하기 위한 간단한 오케스트레이션(Orchestration)도구
docker-compose up
Docker Compose에 정의되어 있는 모든 서비스 컨테이너를 한 번에 생성하고 실행하기 위해서 사용한다.
보통 -d
옵션을 사용하여 백그라운드에서 컨테이너를 띄우는 경우가 많다. (백그라운드로 실행시키지 않으면 Crtl + c를 누루는 순간 모든 컨테이너가 정지된다.)
- -- build 옵션을 사용하면 docker-compose up 명령에서도 도커 이미지를 강제로 다시 빌드하게 할 수 있다. 개발 과정에서 이미지가 자주 수정되는 경우에는 --build옵션을 사용하는 것이 좋다. (docker-compose up -d --build)
$ docker-compose up -d
Docker Compose는 기본적으로 커맨드가 실행하는 디렉토리에 있는 docker-compose.yml를 설정파일로 사용하나 다른 이름이나 경로의 파일을 설정파일로 사용할 경우 -f
옵셔을 사용한다.
$ docker-compose -f docker-compose.example.yml up
docker-compose down
Docker Compose에 정의되어 있는 모든 서비스 컨테이너를 한 번에 정지시키고 삭제한다.
$ docker-compose down
docker-compose start
내려가 있는 특정 서비스 컨테이너를 올리기 위해 사용한다.
docker-compose up 커맨드를 사용해도 내려간 서비스를 알아서 올려줌
$ docker-compose start web
web 컨테이너를 올린다.
docker-compose stop
돌아가고 있는 특정 서비스 컨테이너를 정지시키기 위해 사용한다.
$ docker-compose stop web
docker-compose ps
Docker Compose에 정의되어 있는 모든 서비스 컨테이너 목록을 조회할 때 사용한다.
$ docker-compose ps
docker-compose logs
서비스 컨테이너의 로그를 확인하고 싶을 때 사용하며, 보통 -f
옵션을 사용하여 실시간으로 확인한다.
$ docker-compose log -f web
docker-compose exec
실행중인 서비스 컨테이너를 대상으로 어떤 명령어를 날릴 때 사용한다.
$ docker-compose exec db psql postgres postgres
docker-compose run
서비스 컨테이너의 특정 명령어를 일회성으로 실행할 때 사용한다.
$ docker-compose run web env
// todo exec와 run의 명확한 차이를 알아두기
docker-compose config
Docker Compose 설정을 확인할 때 사용
$ docker-compose config
'프로그래밍 노트 > 도커' 카테고리의 다른 글
[docker] Dockerfile 작성하기_1(이미지 만들고 배포하기) (0) | 2020.10.19 |
---|---|
[docker] docker compose 작성법 알아보기 (0) | 2020.10.09 |
[docker] 도커 컨테이너(container) 실행하기 (0) | 2020.10.06 |
[docker] 도커(docker) 기본 명령어 (0) | 2020.10.03 |
[docker] 도커(docker)란 무엇인가? (0) | 2020.10.03 |