Getting started
Introduction
Jokku is a self-hosted platform for deploying your apps. You git push, it builds your Dockerfile and runs it in Firecracker microVMs on your own servers.
Jokku is modeled on Dokku. You git push an app that has a Dockerfile, and Jokku builds it, runs it and routes your domains to it, with Let's Encrypt certificates for the apps you want on HTTPS.
Two things set it apart:
- Every instance is a microVM. Each instance of your app runs in its own lightweight Firecracker virtual machine instead of a container.
- Servers join with one command. One server is a complete Jokku. Add more and your apps spread across them, with nothing else to change.
The commands are Dokku's, so if you know Dokku, you already know Jokku.
The 60-second tour#
On a fresh Ubuntu or Debian server with KVM:
On your laptop, in a repo with a Dockerfile (you only need git and ssh):
Every other command runs over SSH, from anywhere:
What you get#
git pushdeploys with zero downtime. If the new version fails to start, the push is rejected and the previous version keeps serving.- Dockerfiles, compose files and registry images. Build from a Dockerfile, deploy a whole
compose.yaml, or run an image from a registry. - Automatic HTTPS from Let's Encrypt, served by Caddy, which is built into Jokku.
- Scaling across processes, instances and servers with
ps:scaleandresource:limit. - Volumes for data that must last, which move with their app when it changes servers.
- Private networking. Apps reach each other by name, such as
cache.internal, on any server in the cluster. jokku top, a live view of your servers, apps and every request.