표 4-2에서는 docker-compose.yml 파일에서 사용되는 지시어(instructions)를 보여 준다.
▼ 표 4-2 도커 컴포즈 지시어
지시어 |
설명 |
version |
도커 컴포즈 도구의 버전을 지정한다. |
service |
배포할 서비스를 지정한다. 서비스 이름은 도커 인스턴스에 대한 DNS 엔트리이며, 다른 서비스에서 액세스하는 데 사용된다. |
image |
특정 이미지를 사용하여 컨테이너를 실행하도록 지정한다. |
port |
시작한 도커 컨테이너가 외부에 노출할 포트 번호를 지정한다. 내부 및 외부 포트를 매핑한다. |
environment |
시작하는 도커 이미지에 환경 변수를 전달한다. |
network |
복잡한 토폴로지를 만들 수 있도록 커스텀 네트워크를 지정한다. 타입(host, overlay, macvlan, none)을 지정하지 않았다면 디폴트 타입은 bridge다. 브리지(bridge) 네트워크를 사용하면 동일한 네트워크 내 컨테이너 연결을 관리할 수 있고, 이 네트워크는 동일한 도커 데몬 호스트에서 실행되는 컨테이너에만 적용된다. |
alias |
네트워크 내 서비스에 대한 호스트 별명을 지정한다. |
▼ 표 4-3 도커 컴포즈 명령어
명령어 |
설명 |
docker-compose up -d |
애플리케이션 이미지를 빌드하고 정의된 서비스를 시작한다. 이 명령은 필요한 모든 이미지를 내려받아 배포하고 컨테이너를 시작한다. -d 매개변수는 백그라운드 모드에서 도커를 실행하도록 지정한다. |
docker-compose logs |
최신 배포에 대한 모든 정보를 볼 수 있다. |
docker-compose logs <service_id> |
특정 서비스에 대한 로그를 볼 수 있다. 예를 들어 라이선싱 서비스 배포를 보려면 docker-compose logs licensingservice 명령을 사용한다. |
docker-compose ps |
시스템에 배포한 모든 컨테이너 목록을 출력한다. |
docker-compose stop |
서비스를 마치고 나서 서비스를 중지한다. 이렇게 하면 컨테이너도 중지된다. |
docker-compose down |
모든 것을 종료하고 컨테이너도 모두 제거한다. |