This tutorial will guide you through the steps needed to install and run a self-hosted instance of ShellHub on your local machine or on IaaS providers like AWS, Azure, Google Cloud or Digital Ocean.
ShellHub is designed using the microservices design pattern, so that multiple small and isolated services collaborate to provide the server. In order to make it easier to test ShellHub and its features, we have created a Docker Compose environment that brings all of these components up and connects them together on a single machine.
Before continuing, make sure:
- Docker Engine and Docker Compose are installed properly.
- Following ports are open: TCP 80 and TCP 22.
Checkout the latest stable version¶
First checkout the latest stable version (v0.4.2) of ShellHub as follows:
git clone -b v0.4.2 https://github.com/shellhub-io/shellhub.git shellhub
Now navigate to ShellHub working directory:
It is required to generate a key pair (private and public) for your ShellHub server instance.
./bin/docker-compose up -d
Be patient, it can take up to 10 minutes for the first time
When ShellHub server is up and running, you access the Web UI on http://localhost.
When running in production you should ensure that you enable SSL
This is commonly achieved by running Nginx with your certificates on your Docker host, service or load balancers in-front of the running container.