클라우드/도커
[도커] 도커 10: 도커 컴포즈 1
KyuminKim
2024. 11. 20. 22:46
지난 시간까지는 도커 컨테이너, 도커 이미지를 알아봤다.
이번 시간에는 도커 컴포즈를 간단히 알아보자
도커 컴포즈
지금까지는 도커 컨테이너를 알아보고,
그것을 만들기 위한 도커 이미지, 그리고 도커 이미지 생성을 위한 Dockerfile을 알아봤다.
이번에는 도커 컨테이너가 여러 개인 경우를 알아보자.
도커 컨테이너를 여러 개 두는 경우는
예를 들어 DB, 백엔드, 프론트엔드를 여러 개 두어
하나의 서비스를 제공하는 것이 있다.
즉,
DB 컨테이너 / 백엔드 컨테이너 / 프론트엔드 컨테이너가 있는 것이다.
이를 위해 각각의 컨테이너의 이미지를 정의하고, 서비스 실행을 위한 설정 사항을 한 파일에 넣는다.
이 파일을 run하면 한번에 서비스를 가동시키는 것이다!
정리해보면,
- 여러 개의 컨테이너로 이루어진 시스템의 구축을 하나의 파일로 관리한다
- 컨테이너, 네트워크, 볼륨 등 시스템 구축을 위한 내용을 포함하고 있다
- 도커 컴포즈 파일의 이름은 기본으로 ‘docker-compose.yml’ 혹은‘docker-compose.yaml’이지만,
.yml또는 .yaml 확장자를 갖는 어떠한 파일명도 가능하다
🙋♀️도커 컴포즈 vs 도커파일
이전시간 알아본 도커 파일과 도커 파일의 차이를 정리해보자.
🙋♀️yaml
dockerfile의 각 줄은 명령어와 대응되었던 것과 달리, 도커 컴포즈 파일은 yaml이라는 형식에 맞춰 생성한다!
이때 yaml은 json, xml과 같이 데이터를 나타내는 데에 사용되는 구조화된 데이터 표현 양식이다.
yaml 방식의 특징을 알아보자.
- .yaml 또는 .yml을 확장자로 사용
- 들여쓰기(space bar)를 이용해 구조화
- 탭(tab) 대신 spacebar 사용
- 키와 값의 구성으로 작성 (키: 값)
- 키와 값 사이에 하나의 공백 필수
- #로 주석 표현
- -(하이픈) 을 이용해 배열 원소를 나타냄
🙋♀️도커 컴포즈 파일 예시
다음 시간에는 도커 컴포즈를 어떻게 사용해야 하는지 알아보자!