What is Clank?
Clank is a self-hosted platform-as-a-service (PaaS) that deploys containerized applications to servers you own. Connect your GitHub repos, pull Docker images, or launch pre-configured templates — Clank handles the build pipeline, routing, SSL certificates, and persistent storage.
Who is Clank for?
Section titled “Who is Clank for?”Clank is built for developers and teams who want the deployment experience of Heroku or Railway but on their own infrastructure. Whether you’re running a VPS, a homelab, or a fleet of bare-metal servers, Clank gives you push-to-deploy workflows without giving up control of your machines.
How it works
Section titled “How it works”Clank uses a control plane + agent architecture. The hosted control plane (dashboard, API, build system) manages your projects and orchestrates deployments. A lightweight Go agent runs on each of your servers, connecting outbound to the control plane over gRPC. The agent pulls images, starts containers, configures the Traefik reverse proxy, and reports health status back.
┌─────────────────────────────────┐│ Clank Control Plane ││ ┌─────┐ ┌───────┐ ┌─────┐ ││ │ API │ │Worker │ │ Web │ ││ └──┬──┘ └───┬───┘ └─────┘ ││ │ gRPC │ │└─────┼─────────┼────────────────┘ │ │ ▼ ▼┌───────────┐ ┌───────────┐ ┌───────────┐│ Server A │ │ Server B │ │ Server C ││ (agent) │ │ (agent) │ │ (agent) ││ Traefik │ │ Traefik │ │ Traefik ││ Containers │ Containers│ │ Containers│└───────────┘ └───────────┘ └───────────┘Your servers never need open inbound ports for management. The agent initiates all connections outward, which means it works behind NATs, firewalls, and Cloudflare Tunnels.
Three ways to deploy
Section titled “Three ways to deploy”GitHub repos — Connect a GitHub repository, select a branch, and push. Clank auto-detects your framework (Node.js, Python, Go, Rust, Ruby, static HTML), generates a Dockerfile, builds an image, and deploys it. Subsequent pushes trigger automatic redeployments.
Docker images — Pull any image from Docker Hub, GitHub Container Registry, or a private registry. Specify the image tag, set environment variables, and deploy. No build step required.
One-click templates — Launch pre-configured applications like WordPress, n8n, Ghost, Supabase Studio, and 27+ others. Templates include companion databases, persistent volumes, environment variables, and resource limits out of the box.
Key features
Section titled “Key features”- Auto-Dockerfile detection — Clank inspects your repo and generates an optimized Dockerfile for Node.js SPAs, Node.js servers, Python apps, Go, Rust, Ruby, and static sites.
- Five endpoint access modes — Expose services via public DNS with Let’s Encrypt, Cloudflare Tunnel, Tailscale HTTPS, LAN-only, or your own reverse proxy.
- Persistent storage — Named Docker volumes survive redeployments. Auto-configured for database templates.
- Environment variables and secrets — Configure plaintext variables and encrypted secrets per service. Secrets are encrypted at rest and masked in the UI.
- Teams and roles — Collaborate with owner, admin, developer, and viewer roles. Audit logs track changes.
- GitHub App integration — Auto-deploy on push and spin up preview environments for pull requests.
- CLI — Manage projects, deploy, view logs, and roll back from your terminal.