서비스 정의
services
섹션에서 각 컨테이너 서비스를 정의네트워크 구성
networks
섹션에서 애플리케이션 내부 네트워크를 정의볼륨 설정
volumes
섹션에서 영구 저장소인 볼륨을 정의기타 옵션
version
필드로 Docker-Compose 파일 버전 지정restart
정책, 리소스 제한, 종속성 등 다양한 옵션 설정 가능Docker-Compose 파일 작성
애플리케이션 실행
docker-compose up
명령어로 애플리케이션 실행-d
옵션을 추가하면 백그라운드로 실행애플리케이션 관리
docker-compose down
명령어로 애플리케이션 중지docker-compose ps
명령어로 실행 중인 서비스 확인docker-compose logs
명령어로 로그 확인version: '3'
services:
web:
image: nginx:latest
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html
networks:
- frontend
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: password
volumes:
- db-data:/var/lib/mysql
networks:
- backend
redis:
image: redis:latest
networks:
- backend
volumes:
db-data:
networks:
frontend:
backend:
up
: 애플리케이션 실행down
: 애플리케이션 중지ps
: 실행 중인 서비스 확인logs
: 로그 확인build
: 이미지 빌드pull
: 이미지 다운로드start
, stop
, restart
: 서비스 시작, 중지, 재시작