멀티 컨테이너 (Docker Compose)
실제 앱은 컨테이너 하나로 끝나지 않습니다. 웹·API·데이터베이스를 각각 띄우고 네트워크로 잇고 볼륨을 붙이는 일을 `docker run` 여러 번으로 하면 재현이 어렵습니다. Compose 는 이 구성을 YAML 파일 하나에 선언해 두고 `docker compose up` 한 번으로 전체를 세우며, 서비스 이름이 곧 네트워크 상의 호스트 이름이 됩니다.
01 개념 한눈에 보기
Interactive Step-by-Step실제 앱은 컨테이너 하나로 끝나지 않습니다. 웹·API·데이터베이스를 각각 띄우고 서로 잇는 일을 docker run 여러 번으로 하면 재현이 어렵습니다.
02 쉽게 이해하기
For Everyone무대에 배우를 한 명씩 불러 위치를 잡아 주는 대신, 대본에 배치와 등장 순서를 적어 두고 한 번에 무대를 세우는 것과 같습니다.
compose 파일에 서비스별 이미지·포트·환경변수·볼륨을 적으면, up 할 때 전용 네트워크를 만들고 각 서비스를 그 안에 띄웁니다.
서비스 이름이 DNS 이름이 되므로 API 는 `db:5432` 로 데이터베이스에 붙습니다.
depends_on 은 기동 순서만 정할 뿐 준비 완료를 보장하지 않아, 실제로는 헬스체크나 재시도를 함께 둡니다.
- –로컬 개발 환경 재현
- –통합 테스트 환경 구성
- –여러 서비스의 의존 관계·기동 순서 정의
- –팀원 간 환경 공유
03 자주 묻는 질문
FAQ멀티 컨테이너 (Docker Compose)란 무엇인가요?+
실제 앱은 컨테이너 하나로 끝나지 않습니다. 웹·API·데이터베이스를 각각 띄우고 네트워크로 잇고 볼륨을 붙이는 일을 `docker run` 여러 번으로 하면 재현이 어렵습니다. Compose 는 이 구성을 YAML 파일 하나에 선언해 두고 `docker compose up` 한 번으로 전체를 세우며, 서비스 이름이 곧 네트워크 상의 호스트 이름이 됩니다.
멀티 컨테이너 (Docker Compose)은(는) 어디에 사용하나요?+
로컬 개발 환경 재현, 통합 테스트 환경 구성, 여러 서비스의 의존 관계·기동 순서 정의, 팀원 간 환경 공유
멀티 컨테이너 (Docker Compose)를 쉽게 비유하면?+
무대에 배우를 한 명씩 불러 위치를 잡아 주는 대신, 대본에 배치와 등장 순서를 적어 두고 한 번에 무대를 세우는 것과 같습니다.
