22년 2월에 작성한 글입니다.
docker swarm init --advertise-addr <마스터 IP>



docker service ls [OPTIONS]docker service ps [OPTIONS] SERVICE [SERVICE...]docker service logs [OPTIONS] SERVICE|TASKdocker service create [OPTIONS] IMAGE [COMMAND] [ARG...]docker service scale SERVICE=REPLICAS [SERVICE=REPLICAS...]docker service rm SERVICE [SERVICE...]레지스트리에 올라가지 않은 이미지는 노드간에 서로 공유되지 않음
이미지가 등록된 노드에서만 서비스가 실행될수 있음

따라서 커스텀 이미지를 사용한다면 무조건 이미지 레지스트리 운영 필요
레지스트리 추가 (전체 노드)
docker login 93ced1af-kr1-registry.container.cloud.toast.com/docker-swarm
Dockerfile 및 index.php 복사FROM php:7.2-apache
MAINTAINER chhan <cheolhee.han@ibm.com>
ADD index.php /var/www/html/index.php
EXPOSE 80
<html>
<body>
<center>
<b>
<?php
$host=gethostname();
echo "pod name : ";
echo $host;
?>
<p> Image Version : original </p>
</b>
</center>
</body>
</html>
docker build -t phpdemo:v1 .

docker tag phpdemo:v1 93ced1af-kr1-registry.container.cloud.toast.com/docker-swarm/phpdemo:v1
docker push 93ced1af-kr1-registry.container.cloud.toast.com/docker-swarm/phpdemo:v1
docker service create --name phpdemo -p 80:80 --with-registry-auth \
93ced1af-kr1-registry.container.cloud.toast.com/docker-swarm/phpdemo:v1
docker service ls
docker service ps phpdemo
docker service scale phpdemo=3
docker service ls
docker service ps phpdemo