Simple GUI for Docker Swarm Mode
For something similar, check out Portainer.
docker run -it -v /var/run/docker.sock:/var/run/docker.sock -p 4000:4000 sureshgulla/swarmist
Create an SSH tunnel to manager node:
ssh [email protected]
docker run -it -p 2375:2375 -v /var/run/docker.sock:/var/run/docker.sock ubuntu:16.04 bash -c 'apt-get update; apt-get install -y socat; echo "\nSTARTING\n\n"; socat -d TCP-L:2375,fork UNIX:/var/run/docker.sock'
Start swarmist and connect to tunneled port:
DOCKER_HOST=http://example.com:2375 npm start
docker service create \
--name swarmist \
--constraint node.role==manager \
--mount type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \
--publish 7873:4000 docker.researchnow.com/rnops/swarmist:latest
Add Traefik as a service:
docker service create \
--name traefik \
--constraint=node.role==manager \
--publish 80:80 --publish 8080:8080 \
--mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock \
traefik:v1.1.0-rc2 \
--docker \
--docker.swarmmode \
--docker.domain=local \
--docker.watch \
--web
See also: "Traefik Swarm Mode Guide"
- Check connection and show errors (docker not connected, not in swarm)
- Support for service logs (tracking moby/moby#24812)
- Recipe for using with traefik (https://github.com/containous/traefik/blob/v1.1/docs/user-guide/swarm-mode.md)
- Pending: traefik/traefik#602 (comment)
- Display Service Volume mounts
- Display Service Contraints
- Support for service stats (tracking moby/moby#24597)
- Support digest images / re-pull current image on update ((moby/moby#24066)
- Docker 1.13 will include --force option (moby/moby#27596)
Other pending swarm improvements: https://github.com/docker/docker/issues?utf8=%E2%9C%93&q=is%3Aopen%20label%3Aarea%2Fswarm%20label%3Akind%2Fenhancement