PiCluster – A Simple, Web-based Docker Management Application
PiCluster is a simple, open source, web-based docker management application used to manage Docker containers across multiple hosts. Unlike Docker Swarm or Kubernetes, PiCluster is easy to setup and use. It makes the process of creating containers much easier than ever. Say for example, the users can now upload a zip of their Dockerfile’s to the PiCluster web console and the files will be copied to every node and extracted in the Docker directory specified in PiCluster config file. Also, when a container is added, the image will be automatically built and run in a single step. In previous releases, users would have to manually create the container. It will work on both 32-bit and 64-bit platforms.
The latest PiCluster version ships with many new features. Concerning about the features, we can list the following:
- Built-in web terminal to easily run commands on nodes.
- Run commands in parallel across Nodes.
- Move Docker containers to different hosts in the cluster.
- Heartbeat for services.
- Easily build and orchestrate Docker images across nodes.
- Web interface to easily manage containers.
- Monitor host metrics such as Disk, CPU, Memory etc.
- Virtual IP Manager.
- Syslog/Rsyslog Analytics.
- Integrate the Kibana dashboard into PiCluster.
- Integrates with Elasticsearch to store the PiCluster logs.
- Automatic container failover to different nodes.
- Pull container images from a registry.
- Upload Dockerfile archives to the entire cluster.
- Build images without using the Docker cache.
- And more.
Setup PiCluster using Docker
The quickest way to see how PiCluster works is to play it with docker. The developer has included a compose file to evaluate PiCluster with Docker.
For the purpose of this guide, I will be using Ubuntu 16.04 LTS 64-bit server edition.
First, install Docker as described in the following link.
After installing Docker, install the following prerequisites too.
$ sudo apt-get install openssl git
We are all set. Now, clone the PiCluster GitHub Repository.
$ git clone https://github.com/picluster/picluster.git picluster
The above command will download all contents of PiCluster into a directory called “picluster” in your current working directory. Go to that directory:
$ cd picluster/
Run the PiCluster docker image using command:
$ sudo docker-compose up -d
Access PiCluster web console
Open up your web browser and navigate to http://IP-address:3003. You should a login screen like below.
Use the default credentials to login to the web console: admin/admin
Here it is how PiCluster web console looks like.
As you can see, PiCluster dashboard is very simple and most of the options are self-explanatory.
From the System menu, you can edit or reload the current configuration, and add or remove the hosts.
Under Containers menu, there are options to manage the containers, view running containers, and add new container etc.
In Images section, we can pull, manage, list Docker images, and also we can upload the composer files.
In Operations menu, we can reset virtual ip address on all hosts, run commands on the cluster, view built-in terminal and clean Docker containers, integrate Kibana dashboard etc.
In the logs section, you can view the PiCluster logs, Syslog/Rsyslog analytics.
Happy with PiCluster? Great! Now, refer the PiCluster installation wiki and install it as described in that link and start managing your Docker containers from a web console in any machine on your network.
- Getting Started With Docker
- How To Automatically Update Running Docker Containers
- ctop – A Commandline Monitoring Tool For Linux Containers
- Portainer – An Easiest Way To Manage Docker
- Dockly – Manage Docker Containers From Terminal
And, that’s all for today folks. Hope this helps. Docker management is getting better and better everyday because of tools like PiCluster and similar tools. Give it a try and let us know your thoughts about it in the comment section below.