Why Komodo instead of Portainer or Dockge?
Portainer and Dockge are single-server UIs: they read the local Docker socket and show you what is running on that machine. As soon as you have two or more servers, you need two tabs, you have to remember which service runs where, and replicate every change manually. Komodo breaks this ceiling with its Core / Periphery architecture: the Core is a central server that drives lightweight Periphery agents on each machine. You deploy, restart or update any stack from one interface, with a full history of who did what and when.
What Komodo adds beyond container management
- Native GitOps — link a Git repository, define a Deploy Procedure, and trigger it automatically on every
git pushvia HMAC webhook. - Reusable Procedures — chain image pull, database migration, stack restart and Slack notification into a single versionable workflow.
- Docker Swarm (2026) — manage Swarm services, replicas and rolling updates from the same interface as your Compose stacks.
- Structured audit log — every action (deploy, start, stop, config change) is recorded with timestamp, user and full output.
- GitHub / GitLab / Gitea webhooks — direct integration with your repositories, HMAC signature validated by Komodo.
- Ultra-lightweight Periphery agents — under 50 MB RAM each, deployable in a single Docker command on any Linux machine.
Core / Periphery architecture in practice
The Core is the brain: it stores configuration in FerretDB (a MongoDB-compatible layer over PostgreSQL), exposes the web UI on port 9120 and receives webhooks. Periphery agents are the arms: each one runs on a target server, proxies the machine's Docker socket to the Core over an encrypted channel and executes the commands the Core sends. The asymmetric keypair generated at init ensures that only your Core can command your agents — no extra secrets to manage. On a ServOrbit VPS, the local Periphery agent is deployed in the same Docker Compose stack as the Core, so the hosting server itself is managed from the first boot.
Deploy Komodo on your ServOrbit VPS
Order the VPS
A 1 vCPU / 1 GB RAM VPS on Ubuntu 24.04 LTS is sufficient for the Komodo control plane (Core + FerretDB + PostgreSQL). The Rust Core idles under 256 MB. If you plan to run other services on the same VPS, 2 GB RAM is recommended.
Deploy from the ServOrbit marketplace
In your ServOrbit client area, go to Marketplace → Deployment & DevOps → Komodo and click Deploy. You will need to provide a domain name (or subdomain) — required for KOMODO_HOST. The playbook auto-generates JWT secrets, the Core/Periphery keypair and the admin password, then starts all four services. The Komodo dashboard is available on port 9120 over HTTPS.
Log in and verify the local agent
Open https://your-domain.com:9120 and log in with admin and the password shown in your ServOrbit client area. In the Servers menu you should see a server named 'Local' already registered — this is the Periphery agent on the hosting VPS that auto-connected at startup.
Add your other servers
On each additional VPS to manage, install the Periphery agent: docker run -d --restart=unless-stopped --network host -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/moghtech/komodo-periphery:2. Then in Komodo, go to Servers → Add Server, enter the agent IP and port 8120. The Core validates the connection using the Periphery public key generated at init.
Create your first stack
In Komodo, go to Stacks → New Stack. Choose the target server from the dropdown (Local or any added agent), paste your Docker Compose YAML or point to a Git repository path, and click Deploy. Komodo writes the file to the remote server, runs docker compose up -d and streams the logs in real time.
Set up a GitOps pipeline
In your GitHub repository, add a webhook pointing to https://your-domain.com/api/webhook/komodo. In Komodo, create a Procedure named 'Deploy App': pull image, restart stack, notification. Link the webhook to the Procedure. Every git push now triggers the pipeline — the HMAC is verified by Komodo before execution.
Logging in for the first time
The login screen is waiting for you: enter the username admin and the password provided. Change that password from the account settings during your very first session.
Komodo vs Portainer vs Dockge
| Feature | Komodo | Portainer CE | Dockge |
|---|---|---|---|
| Native multi-server | ✅ Core/Periphery unlimited | ⚠️ Edge agents (paid) | ❌ Single host only |
| GitOps / webhooks | ✅ Native, HMAC-validated | ❌ Not native | ❌ Not native |
| Docker Swarm | ✅ Since 2026 | ✅ Native | ❌ No |
| Procedures / automation | ✅ Built-in engine | ⚠️ Limited CE | ❌ No |
| Audit log | ✅ All actions | ⚠️ Partial CE | ❌ No |
| RAM (management plane) | ~256 MB (Rust Core) | ~512 MB | ~100 MB |
| License | GPL-3.0 (free self-host) | Zlib (CE) | MIT |
Komodo + Dockge: the best of both worlds
Komodo and Dockge are not mutually exclusive. Dockge is great for interactive Compose file editing on a single machine (YAML editor with syntax highlighting). Komodo handles multi-server coordination, Git deployments and workflows. Deploy Dockge via Komodo on your development machines, and use Komodo to orchestrate your production deployments.