Web Backend

Docker Swarm

Atriel 2025. 4. 7. 16:05

Docker Compose 실제 서비스에 관리

 

Docker Compose는 단일 서버로 제한되고 고급 오케스트레이션 기능이 없다.

이를 극복하고 멀티 호스트로 운영하려면 Docker Swarm을 도입하게 됩니다.

 

Docker Swarm 클러스터 초기 설정

 

docker swarm init

docker stack deploy -c docker-compose.yml my-app

 

Docker Swarm 모드(stack deploy)에서만 작동

services:
mysql:
image: mysql:8.0
    …
    deploy:
    replicas: 3                 # 컨테이너 인스턴스를 3개로 자동 스케일링
    	update_config:
    parallelism: 2            # 동시 업데이트할 인스턴스 개수
    delay: 10s                # 업데이트 간격
   	restart_policy:
    	condition: on-failure     # 실패 시 재시작
    placement:
    	constraints:
    		- node.role == worker   # 배치 조건 (워커 노드에만 배치)

 

 

Docker Swarm 모니터링

 

taskkill, kill, docker stop 등.. 어떻게든 죽여도 다시 살아남