섹션 6 - Docker Compose: 다중 컨테이너 오케스트레이션
1. Docker Compose란?
✅ 개요
✅ 주요 특징
2. Docker 명령어 기반 수동 실행 방식 (Before Compose)
--------------------- Create Network --------------------- docker network create goals-net --------------------- Run MongoDB Container --------------------- docker run --name mongodb \ -e MONGO_INITDB_ROOT_USERNAME=max \ -e MONGO_INITDB_ROOT_PASSWORD=secret \ -v data:/data/db \ --rm \ -d \ --network goals-net \ mongo --------------------- Build Node API Image --------------------- docker build -t goals-node . --------------------- Run Node API Container --------------------- docker run --name goals-backend \ -e MONGODB_USERNAME=max \ -e MONGODB_PASSWORD=secret \ -v logs:/app/logs \ -v /Users/maximilianschwarzmuller/development/teaching/udemy/docker-complete/backend:/app \ -v /app/node_modules \ --rm \ -d \ --network goals-net \ -p 80:80 \ goals-node --------------------- Build React SPA Image --------------------- docker build -t goals-react . --------------------- Run React SPA Container --------------------- docker run --name goals-frontend \ -v /Users/maximilianschwarzmuller/development/teaching/udemy/docker-complete/frontend/src:/app/src \ --rm \ -d \ -p 3000:3000 \ -it \ goals-react --------------------- Stop all Containers --------------------- docker stop mongodb goals-backend goals-frontend
3. Compose 설정 구조 및 작성법
✅ 기본 구성 키
키워드
설명
a. 환경 변수 설정 방법
b. 네트워크 설정
c. 볼륨 정의
d. 도커 컴포즈 사용 시 유의사항
e. YAML 문법 팁
4. docker-compose.yaml 예시 (MongoDB + Node + React)
docker-compose.yaml 예시 (MongoDB + Node + React)5. .env 파일 예시
.env 파일 예시📄 env/mongo.env
env/mongo.env📄 env/backend.env
env/backend.env6. 실행 및 정리 명령어
▶️ 실행
⏹ 종료
7. 기타 유용한 팁
🔍 컨테이너 이름 자동 생성 규칙
🏷 명시적 컨테이너 이름 지정
최종 요약
항목
설명
Last updated