You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
verita84 c2c81bbaa1 Upload files to 'images' 3 months ago
agent fix 5 months ago
docker fix 5 months ago
example fix 5 months ago
images Upload files to 'images' 3 months ago
server fix 5 months ago
ssl fix 5 months ago
web fix 5 months ago
LICENSE.txt fix 5 months ago Update '' 3 months ago
RELEASE_NOTES.txt fix 5 months ago
config-example.json fix 5 months ago
docker-compose-multi-node.yml fix 5 months ago
docker-compose-multinode.config.json fix 5 months ago
docker-compose-rpi.yml fix 5 months ago
docker-compose.config.json fix 5 months ago
docker-compose.yml fix 5 months ago
grafana-dashboard-7.x.json fix 5 months ago
grafana-dashboard.json fix 5 months ago
kibana-dashboards-7x.ndjson fix 5 months ago
kibana-graphs.json fix 5 months ago
launch.json fix 5 months ago
package-lock.json fix 5 months ago
package.json fix 5 months ago
picluster-pm2.config-example.json fix 5 months ago
picluster-pm2.config.json fix 5 months ago
pictl fix 5 months ago



PiCluster is a simple way to manage Docker containers on multiple hosts. I created this because I found Docker Swarm not that good and Kubernetes was too difficult to install currently on ARM. PiCluster will only build and run images from Dockerfile's on the host specified in the config file. This software will work on regular x86 hardware also and is not tied to ARM.

License: GPL v3



  • Move containers to different hosts in the cluster
  • Container Load Balancer
  • Run commands in parallel across Nodes
  • Heartbeat for services
  • Easily build and orchestrate Docker images across nodes
  • Web interface
  • CLI interface
  • Monitor host metrics (Disk, CPU, Memory)
  • HTTP interface
  • Virtual Networking via Swarm
  • Virtual IP Manager
  • Rsyslog Analytics
  • Built-in web terminal to easily run commands on nodes
  • Integrate the Kibana dashboard into PiCluster
  • Integrates with Elasticsearch to store the PiCluster logs and host monitoring metrics .
  • Automatic container failover to different nodes
  • Pull container images from a registry
  • Upload Dockerfile archives to the entire cluster
  • Functions-as-a-Service (FaaS)


  • Docker
  • Node.js
  • OpenSSL
  • pq
  • git
  • curl


apt-get install openssl git node docker pq curl

Arch Linux

pacman -S openssl git node docker pq curl

Cloning this Repository

git clone picluster

To clone the developer branch (not recommended unless you know what you're doing):

git clone -b dev picluster

Config file reference

See Wiki

Try PiCluster in Docker

We included a compose file to evaluate PiCluster easily on your laptop. Simply Install Docker on your laptop and do the following:

cd picluster
docker-compose up -d

Finally, in your web browser go to


See Wiki

Container Load Balancer

See Wiki


See Wiki

Functions-as-a-Service (FAAS)

See Wiki

Configuring and using the command-line client "pictl"

See Wiki


See Wiki

Using pm2 to init PiCluster on systemd

See Wiki

Automatic Container failover to other hosts

See Wiki

Authors and Contributions


This work, "Raspy Whale", is a derivative of "raspberry" by Chanut is Industries from the Noun Project used under CC BY, "Sperm Whale" by Oksana Latysheva from the Noun Project used under CC BY, and "Sperm Whale" by Oksana Latysheva from the Noun Project used under CC BY. "Raspy Whale" is licensed under CC BY by Jordan Sinn.