Run a fleet without running Kubernetes.
One binary on one machine. Add nodes over SSH, point it at Git, and every stack becomes a service with rolling updates, readiness checks and one-click rollback.
One binary on one machine. Add nodes over SSH, point it at Git, and every stack becomes a service with rolling updates, readiness checks and one-click rollback.
A server that has run for two years already has a proxy in front of it and, often, a pool someone enabled once. Portiger detects both and takes them over instead of asking you to tear them down.
The Assistant reads your installation, plans the stack with a security review, and deploys only what you approved, into the one stack you named.
Portiger is in early access. The plans and the prices are settled; the product is not finished, so none of it is on sale. Leave an address and we will write once, when it is ready to install.
One email, about this product. No newsletter, and the address is not passed to anyone.
Portiger is one binary and one database. A node you add over SSH runs the same binary and joins the same pool.
One command. curl | sh fetches the binary and portiger install <licence key> installs Docker, starts the workload pool and opens the panel. The first screen is a setup wizard.
$curl -fsSL get.portiger.com | sh -s -- <licence key>
portiger install <licence key>
Give the panel SSH access to a machine once. It installs Portiger there and joins it to the pool. Nodes talk to each other on three ports inside your network; the only thing that leaves your network is the licence check.
Connect GitHub, GitLab, Gitea or Bitbucket. Your provider's runner checks out, tests and builds the image; Portiger checks the compose file and portiger.yaml, then deploys, keeping the previous version ready for a one-click rollback.
Every stack you create runs as a service in the workload pool: replicas come back on their own, updates roll one replica at a time, and two probes tell the difference between alive and ready.
Is the app still alive? If not, replace the replica.
Is it ready for visitors? Until it passes, no traffic and the stack shows Progressing.
The last versions stay warm; going back is one click.
Every plan is self-hosted and all of this runs on your own machines. Which parts are switched on depends on the plan, and the pricing page spells out exactly which.
Every stack runs in the workload pool: replicas come back on their own and updates roll one at a time.
Learn moreTwo probes: alive or replace the replica; ready or no traffic yet.
Learn moreStaging and production kept apart, with their own secrets, configs and placement.
Learn moreExec or container jobs with their output and exit code kept.
Learn moreA domain is one object: DNS points the name here, Web says which stack answers.
Learn moreRedirects, rate limits, basic auth, headers and CORS on the domain; certificates renew themselves.
Learn moreYour runner tests and builds; Portiger checks and deploys, with a gate when you want to approve first.
Learn moreMailboxes, forwarders and lists on your own domain, DNS records written for you.
Learn moreA vault with global and per-stack scope; thirteen host checks with one fix each.
Learn moreAdd a node over SSH; copies fixed or automatic; pinned or left to the pool.
Learn moreMetrics per stack and container, a history of changes, alerts where your team reads them.
Learn moreDescribe an application, approve the plan, it deploys into the one stack you named.
Learn moreMost tools of this kind assume a fresh server. Real servers are not fresh: there is a proxy in front, certificates that already work, and sometimes a workload pool someone turned on two years ago. Portiger detects each of those and takes them over.
One process, and the same binary on every node. The web interface is compiled into it, so there is no separate frontend to serve, no Node runtime on the box and no version skew between panel and API. State lives in a single SQLite database, and portiger update replaces the binary with a snapshot taken first.
Sentinel reads the host it runs on: SSH settings, Docker exposure, listening ports, pending updates and more, thirteen checks in all. It uses no scanner and no vulnerability database; it looks at what is actually configured and tells you the one change that fixes each finding. Personal runs four basic checks; Team and Max run all of them on a schedule and notify you.
Portiger is in early access and the gaps below are real. They are listed because finding them after paying is worse than reading them now.
One address per kind of question, answered by the people who build it.
Community runs one node for one operator and keeps working forever. What the paid editions add is the mail server, scaling, and — at the top — three nodes behaving as one.
Free
One node, one operator. Unlimited stacks and domains; no scheduled jobs.
$20/month
Adds the mail server on your own domain, scheduled jobs, and right-sizing that tunes CPU and memory while things run.
$49/month
Five people. Replicas, build pipelines, roles, single sign-on, audit trail and private registries.
$149/month
Twenty-five people. Three nodes as one pool, an mTLS mesh, scheduled backups and the Assistant.