도커 컴포즈 파일은 애플리케이션의 '원하는 상태', 다시 말해서 모든 컴포넌트가 실행 중일 때 어떤 상태여야 하는지를 기술하는 파일이다. 또한, docker container run 명령으로 컨테이너를 실행할 때 지정하는 모든 옵션을 한데 모아 놓은 단순한 형식의 파일이다.
docker-compose.yml파일을 작성하고 docker compose up으로 실행한다.
: 다수의 호스트(manager,workers)에 여러 종류의 컨테이너
3개의 VM 준비

manager 노드 구성
root@worker2:~# docker swarm init
도커 엔진을 스웜 모든로 전환
docker swarm join --token SWMTKN-1-****로 생긴 토큰을 workers VM에 붙여주어 스웜에 참여시킨다.
docker swarm join-token worker
# 워커 노드로 스웜에 참여하기 위한 명령을 화면에 출력
docker swarm join-token manager
# 매니저 노드로 스웜에 참여하기 위한 명령을 화면에 출력
docker node ls
# 스웜에 참여 중인 노드의 목록을 출력
docker service
root@manager:~# docker service create --replicas 2 -p 5858:80 --name myweb oolralra/ipnginx
# --replicas = 복제본. 서비스를 구성하는 컨테이너
# ipnginx = 자신(호스트, 여기선 컨테이너)의 아이피를 출력.
docker service ps myweb
# 이 서비스의 레플리카 목록을 확인한다.
docker container ls
# 현재 컴퓨터에 실행 중인 컨테이너를 확인한다.
도커 스웜에서 말하는 스택은 클러스터가 관리를 담당하는 리소스의 모임이다.
스택 : 서비스, 네트워크, 볼륨 등 여러 개의 도커 리소스를 묶어 만든 리소스를 말한다,
