Runtipi
Homeserver manager with one-click installs for self-hosted apps
Runtipi is an open-source homeserver manager that installs and runs self-hosted applications with one click from its app store. It manages Docker containers and reverse proxying behind the scenes and shows installed apps on a dashboard.
Key features
- One-click app store
- App dashboard with tiles
- Automatic reverse proxy
- Beginner-friendly UX
Pros & cons
Strengths
- Extremely easy app management
- Polished interface
Trade-offs
- Opinionated stack
- Less flexible than raw Docker
Last reviewed Aug 26, 2026 · 809 words
Runtipi is for the person who wants 10 services running by tonight and has no interest in learning Docker Compose this month. It installs with 1 command, puts an app store in your browser, and hides Traefik, volumes and networking behind an Install button. That is exactly right for a first home server and exactly wrong for anyone who already has a docker-compose.yml habit, because the price of the Install button is that Runtipi owns the stack. Both readers are served below; decide which one you are before running the script.
What the Install button does behind your back
Each app in the store is a Compose file plus a metadata JSON maintained in the Runtipi app store repository. Installing it pulls the images, creates the app's folders under app-data/, wires it into an internal Traefik instance on ports 80 and 443, and adds a tile to the dashboard. Variables that need a value (admin password, domain) are asked for in a form. Exposing an app to the internet is a toggle that requests a Let's Encrypt certificate through the same Traefik, provided your domain already points at the box. A guest dashboard can show a chosen subset of tiles with no login.
The store had a couple of hundred apps at last check, weighted toward the usual homelab set: media, downloads, dashboards, notes, ad blocking. Recent versions let you add community app stores from the settings page, so a missing app is often one repository away.
Install: 1 command, 3 minutes, 2 checks first
curl -L https://setup.runtipi.io | bash
The script installs Docker if absent, creates a runtipi directory in the current path, and starts the dashboard on port 80. Two things to check before running it. First, ports 80 and 443 must be free; a Pi-hole, Caddy or Nginx Proxy Manager already listening there stops Runtipi from starting, and while the ports can be moved in settings, the exposure features assume the defaults. Second, this wants a Debian or Ubuntu host it can treat as its own. Installing it onto a machine that already runs 15 hand-managed containers is where the "opinionated" complaint comes from. 512 MB of RAM covers Runtipi itself; add whatever the apps need.
The moment you outgrow it, in 3 stages
Stage 1 is a setting the form does not expose. The escape hatch is user-config/<app>/docker-compose.yml, an override file merged on top of the store's definition, where you can add a volume, change a port or pin an image tag. Use it; it survives updates.
Stage 2 is an app that is in no store at all. You can publish your own app store repository in the same JSON format, which is more work than a plain Compose file for a one-off.
Stage 3 is wanting to see what is actually running. Runtipi's containers are ordinary Docker containers, so docker ps and Dozzle work fine, but the Compose files are generated and editing them directly is undone on the next update. At stage 3 you are ready for the Compose patterns most people settle on, and moving an app out is copying app-data/<app> into a stack you own.
Runtipi against its neighbours
| Tool | Feel | Best for |
|---|---|---|
| Runtipi | App store with a tile dashboard | First server, want it to look finished |
| CasaOS | Consumer-OS desktop with a file manager | NAS-like box, drag and drop |
| Coolify | PaaS: git push to deploy | Developers hosting their own apps |
| Dockge | Compose editor with a UI | People who already write Compose |
Runtipi and CasaOS solve the same problem; Runtipi has the tidier app definitions and the domain-exposure toggle, CasaOS has the friendlier file management. Coolify and Dockge are for people who want to see the YAML.
Backups and updates
Update Runtipi itself from the settings page or with ./runtipi-cli update latest; update apps individually when the store bumps them. Per-app backups exist in the UI and land in backups/, but they are archives of app-data/, so a real off-box copy still means pointing restic or similar at that directory nightly. Store versions can lag upstream by days or weeks; if you need a specific release the day it ships, pin it in user-config.
What I'd do
New to all of this and own one box: install Runtipi, put Jellyfin, Vaultwarden, a dashboard and a downloader on it, turn on backups, and enjoy a finished-looking server by the end of the evening. Already comfortable with Compose: skip it, because the override files will annoy you within a month. If you start with Runtipi and outgrow it, that is the intended path, not a failure; the data directories come out cleanly.
Similar dashboards & startpages apps
Portainer CE
Dashboards & StartpagesLightweight management UI for Docker and Kubernetes
Replaces Rancher, Docker Desktop
CasaOS
Dashboards & StartpagesSimple, easy-to-use home cloud system and dashboard
Replaces Google homepage
Glance
Dashboards & StartpagesSelf-hosted feeds and info dashboard
Replaces Heimdall
Web Check
Dashboards & StartpagesAll-in-one OSINT tool for analysing any website
Homepage
Dashboards & StartpagesFast, file-configured application dashboard
Replaces Heimdall
Dashy
Dashboards & StartpagesFeature-rich personal dashboard for self-hosters
Replaces Heimdall