Skip to content

Instantly share code, notes, and snippets.

@duglin
Last active July 14, 2016 14:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save duglin/2e13f1048952a18589503405429a7357 to your computer and use it in GitHub Desktop.
Save duglin/2e13f1048952a18589503405429a7357 to your computer and use it in GitHub Desktop.
(docker rm -f manager node1 node2;docker network rm mynet;rm -f cmds)&>/dev/null
bold=$(tput bold)
normal=$(tput sgr0)
function doit() {
set +e
echo -n $bold"$ "
if [[ "$SKIP" == "" ]]; then read -s -n 1 ; fi
echo -n $*$normal" "
echo "$*" >> cmds
if [[ "$SKIP" == "" ]]; then read -s -n 1 ; fi
echo
$* 2>err >out
rc=$?
cat err out
[[ "$rc" == "0" ]] || exit
echo
set -e
}
set -e
doit docker network create mynet
doit docker run --net mynet --privileged -dti --name manager --hostname manager ibmdojo/dind
doit docker run --net mynet --privileged -dti --name node1 --hostname node1 ibmdojo/dind
doit docker run --net mynet --privileged -dti --name node2 --hostname node2 ibmdojo/dind
doit docker exec -ti manager docker swarm init --secret please
doit docker exec -ti node1 docker swarm join --secret please manager
doit docker exec -ti node2 docker swarm join --secret please manager
doit docker exec -ti manager docker service create --name mini -p 80:80 ibmdojo/mini
doit docker exec -ti manager docker service ls
echo -e $bold"Waiting for it to start...\\n"$normal
while !(docker exec manager docker service ls|grep "1/"&>/dev/null);do true;done
doit docker exec -ti manager docker service ls
doit docker exec -ti manager curl manager
doit docker exec -ti manager curl node1
doit docker exec -ti manager curl node2
doit docker exec -ti manager docker ps
doit docker exec -ti node1 docker ps
doit docker exec -ti node2 docker ps
doit docker exec -ti manager docker service scale mini=3
echo -e $bold"Waiting for it to scale...\\n"$normal
while !(docker exec manager docker service ls|grep "3/"&>/dev/null);do true;done
doit docker exec -ti node1 docker ps
doit docker exec -ti manager curl manager
doit docker exec -ti manager curl manager
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment