/swarmpit

Lightweight mobile-friendly Docker Swarm management UI

Primary LanguageClojureEclipse Public License 1.0EPL-1.0

swarmpit

Lightweight mobile-friendly Docker Swarm management UI

version gitter Build Status PRs Welcome Donate

Swarmpit provides simple and easy to use interface for your Docker Swarm cluster. You can manage your stacks, services, secrets, volumes, networks etc. After linking your Docker Hub account or custom registry, private repositories can be easily deployed on Swarm. Best of all, you can share this management console securely with your whole team.

More details about future and past releases can be found in ROADMAP.md

Twitter URL

Installation

The only dependency for Swarmpit deployment is Docker with Swarm initialized, we are supporting Docker 1.13 and newer.

Package installer

Installer is your guide to setup Swarmpit platform. For more details see the installer

Stable version

Deploy our current milestone version

docker run -it --rm \
  --name swarmpit-installer \
  --volume /var/run/docker.sock:/var/run/docker.sock \
  swarmpit/install:1.7

Edge version

Deploy latest version for the brave and true

docker run -it --rm \
  --name swarmpit-installer \
  --volume /var/run/docker.sock:/var/run/docker.sock \
  swarmpit/install:edge

Manual installation

Simply deploy Swarmpit by using a compose file from our git repo.

git clone https://github.com/swarmpit/swarmpit
docker stack deploy -c swarmpit/docker-compose.yml swarmpit

This stack is a composition of 3 services:

  • app - Swarmpit
  • agent - Swarmpit agent
  • db - CouchDB (Application data)
  • influxdb - InfluxDB (Cluster statistics)

Feel free to edit the stackfile to change an application port and we strongly recommend to specify following volumes:

  • db-data
  • influxdb-data

to shared-volume driver type of your choice. Alternatively, you can link db service to the specific node by using constraint.

Swarmpit is published on port 888 by default.

Development

Swarmpit is written purely in Clojure and utilizes React on front-end. CouchDB is used to persist application data & InfluxDB for cluster statistics.

Everything about building, issue reporting and setting up development environment can be found in CONTRIBUTING.md

Demo

Try in PWD

Deploys Swarmpit to play-with-docker sandbox. Please wait few moments till application is up and running before accessing port 888. Initialization might take a few seconds.