/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 Financial Contributors on Open Collective

Twitter URL

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

opencollective

Installation

The only dependency for Swarmpit deployment is Docker with Swarm initialized, we are supporting Docker 1.13 and newer. Linux hosts on x86 and ARM architectures are supported as well.

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.9

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

Deploy Swarmpit by using a compose file from our git repo with branch of corresponding version.

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

For ARM based cluster use custom compose file.

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

This stack is a composition of 4 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.

Configuration

Refer to following document

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.

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]