Docker Compose
여러 서비스 오케스트레이션
애플리케이션과 데이터베이스 함께 실행
version: '3.8'
services:
api:
build: .
ports:
- "3000:3000"
environment:
- NODE_ENV=production
- DATABASE_URL=postgresql://postgres:password@db:5432/myapp
depends_on:
- db
db:
image: postgres:15
environment:
- POSTGRES_DB=myapp
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=password
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
volumes:
postgres_data:
실행
# 백그라운드 실행
docker-compose up -d
# 로그 확인
docker-compose logs -f api
# 중지
docker-compose down
서비스 구조
┌─────────────┐
│ API │
│ (port:3000)│
└──────┬──────┘
│
│ depends_on
▼
┌─────────────┐
│ Database │
│ (postgres) │
└─────────────┘