13-1. 도커 컴포즈를 사용한 운영 환경
- 도커 스웜에서 컴포즈 문법을 사용하기에 운영, 개발, 테스트에 동일한 파일 포맷을 사용할 수 있다.
- 아래 컴포즈 파일을 이용해 도커 컴포즈로 단일 서버에 애플리케이션을 배포시킬 수도, 도커 스웜을 사용해 배포할 수도 있다(마찬가지로 레플리카 하나 실행중인 서버 생성 및 인그레스 네트워크로 포트 공개)
#1. 스웜 배포를 위한 기본적인 컴포즈 파일
version: "3.7"
services:
todo-web:
image: diamol/ch06-todo-list
ports: - 8080:80
- 스웜모드에서의 스택은 서비스, 네트워크, 볼륨 등 여러 도커 리소스를 묶어 만든 리소스를 의미하며, 애플리케이션 배포 시 생성한다.
#2. 위 컴포즈 파일을 스택을 이용해 배포
cd ./ch13/exercises
docker stack deploy -c ./todo-list/v1.yml todo # 컴포즈 파일로 스택을 배포
docker stack ls # 스택 목록에서 새로 생성된 스택 확인
docker service ls # 새로 생성된 서비스를 확인(스택배포==서비스 생성)