도커로 여러 개의 docker run 명령을 실행하면 옵션이 많아지고, 실수하기 쉽습니다.
이를 해결하기 위해 나온 도구가 Docker Compose입니다!
Docker Compose는 여러 컨테이너 서비스(Node.js, MongoDB, React 등)를 하나의 구성 파일로 관리하고,
docker-compose up 명령어 한 번으로 실행할 수 있도록 도와줍니다.
🧩 Docker Compose란?
✅ 기능
- 한 번의 명령어로 여러 서비스 컨테이너 실행
- 여러 컨테이너를 오케스트레이션하여 효율적인 실행 및 중지 관리 가능
docker run 명령어를 복사·붙여넣는 대신 구성 파일(docker-compose.yml) 로 관리 가능
✅ 장점
- 단일 명령으로 전체 애플리케이션 관리
- 다중 컨테이너 애플리케이션에서 특히 유용
docker run 명령어를 반복해서 입력하는 시간을 절약
❌ 헷갈리지 말 것
- Dockerfile을 대체하지 않음
- Docker Compose는 이미지를 빌드하고 컨테이너 실행을 쉽게 하는 도구
- Dockerfile은 그대로 필요
- 이미지나 컨테이너 자체를 대체하지 않음
- 다중 호스트 관리에는 부적합
- 여러 서버에서 컨테이너를 관리하려면 Kubernetes나 Swarm 같은 오케스트레이션 도구 필요
🖼️ Docker Compose 동작 구조 (Mermaid)