SSD Nodes Learn Hosting plans →
How to do am Matt ConnorBy Matt Connor · Updated 2026-08-29

25 Self-Hosted Apps Wey Worth Am for 2026

See 25 self-hosted apps for 2026, wetin each one replace, honest RAM and disk needs, plus the gotcha wey fit cause wahala before you install am.

Wetin you dey build

No be one app, na shortlist. Dis na the hub for everything else for dis site: twenty-five applications wey really worth running for your own VPS for 2026, grouped by the work wey dem do. For each one, you go see the service wey e replace, honest RAM-and-disk figure, and the one thing wey go cause wahala if you skip am. The links go the full step-by-step guide where one dey.

I don run VPS host for fifteen years, and I dey run most of these for my own boxes. So, the resource numbers below na wetin the app actually dey use under small real workload, no be the "minimum" from marketing page. Treat dem as budget, then add headroom.

Prerequisites and the honest reality

Every app for here dey run for fresh Ubuntu 24.04 KVM VPS with root or sudo. The same list go run well for one box wey dey your own cupboard, and if you dey compare monthly rent with buying the RAM once, Proxmox for house versus rented VPS go calculate the hardware and power cost. Almost all of dem dey ship as Docker containers, so install Docker once and you don ready for the whole list:

curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker "$USER"
newgrp docker
docker run --rm hello-world

If docker commands fail with permission denied while trying to connect to the Docker daemon socket, you skip the group step or you no open new shell. Log out and log back in. If docker compose return docker: 'compose' is not a docker command, you get the old standalone binary; the script above install the modern Compose plugin, wey you call as docker compose (space, no be hyphen).

Three realities dey shape everything below. First, RAM na the constraint, no be disk or CPU. 1 GB VPS fit run one small app and nothing more. 4 GB na the real sweet spot for box wey you wan self-host some things. 2 GB na the awkward middle where beginner go stack third service, hit silent Out-Of-Memory kill, and never understand why the container just disappear, sudo dmesg show the Out of memory: Killed process line wey the daemon swallow. Second, anything public need name and certificate, bare IP fit work for testing but e go fail once you want phone app or browser to trust am. Third, two ports decide half your options: 80 and 443 must reach the box for automatic TLS, and most providers block outbound 25. Na why email dey the "do not" list for the end.

Files and photos

  • Nextcloud dey replace Google Drive, Dropbox, and Google Calendar inside one suite. Plan for 1–2 GB RAM, plus the storage wey your files need. The main problem be say SQLite dey okay for demo but e fit cause trouble for production. Install am with PostgreSQL from the first boot, because migrating the database after your data don enter there na the commonest way people dey spoil Nextcloud. The full Nextcloud for VPS with Docker, TLS and backups guide dey set am up correctly from the first time.
  • Immich dey replace Google Photos, including the phone app wey dey auto-upload your camera roll and search faces and objects. Plan for 6 GB RAM; Immich docs call that the minimum, while 8 GB dey more comfortable. The machine-learning container na the part wey dey use plenty resources. Disk space should equal your library plus about twenty percent for thumbnails. The main problem be say Immich still releases breaking changes between versions, so no just pull latest blindly. Pin one version and read the release notes before every upgrade. The self-hosted Immich photo library guide dey explain the safe upgrade path. If your box no get up to that 6 GB minimum, PhotoPrism and Immich side by side compares both based on real memory use, phone apps, and the backup commands wey each one need before you commit your library to either one.
  • Seafile dey replace Dropbox with the fastest sync engine among the three. Plan for about 1 GB RAM. The main problem be say Seafile dey store your files as content-addressed blocks, instead of plain files for disk. So you no fit browse the data with ls, and you must back up through Seafile own tools, not by copying one folder.

Passwords

  • Vaultwarden replace Bitwarden paid tier, LastPass, and 1Password with one small Rust server wey dey use Bitwarden protocol, so every official Bitwarden app and browser extension go just work. Plan for 100–200 MB RAM and almost no disk space. The main wahala be say this box hold every password wey you get, so TLS and backups no be optional here; na dem be the whole point. Set the ADMIN_TOKEN as an Argon2 hash, because plaintext token inside your compose file na master key wey dey exposed. The Vaultwarden password manager guide na the best possible first self-host.

Media

  • Jellyfin fit replace Plex and, for your own library, Netflix. E open fully, no account and no paywalled remote streaming. Plan for 1–2 GB RAM when e dey idle, but CPU fit spike hard during transcode. The wahala be say software transcoding for 4K stream fit overload small VPS. Either give the machine hardware acceleration, or keep your files for format wey your clients fit play directly (Direct Play), so the server only dey send bytes. The Jellyfin media server on a VPS guide explain the difference. Once e don run, Halcyon turns that same library into a walkable 90s rental store for browser. Na one of the silliest and most effective tricks wey I know to make household browse the shelves instead of scrolling pass everything.
  • Navidrome fit replace Spotify for your own music and stream to any Subsonic-compatible app. Plan for 150–300 MB RAM. Dem write am for Go, and e barely dey use resources. The wahala be say the first library scan go read tags for every file, and e fit take one hour for big collection. Bad ID3 tags go lead to bad browsing experience.
  • Audiobookshelf fit replace Audible and your podcast app, while e dey keep playback position across devices. Plan for 200–500 MB RAM. The wahala be say e expect strict folder-per-book layout. Messy import folder go produce messy library wey only detect some items, and fixing am later fit tedious.

Automation and AI

  • n8n dey replace Zapier and Make with visual workflow builder wey you own, and e no dey charge per task. Plan for 400 MB–1 GB RAM. The wahala be say: n8n dey encrypt credentials wey e store with key wey e generate for first run. If you lose that key, or forget to set N8N_ENCRYPTION_KEY and allow am regenerate, every saved credential go become unreadable and you go need enter all of dem again. The self-hosted n8n with HTTPS guide dey pin the key and put real certificate in front of the webhook URLs.
  • Ollama dey replace ChatGPT subscription for local, private LLM inference. Plan according to model: 7–8B model need about 8 GB RAM, and each model take 4–8 GB for disk. The wahala be say: for CPU-only VPS, inference dey work but e slow. Think in words per second, no be the instant replies wey hosted API dey give you. Set your expectation, or rent GPU box. The run Ollama to self-host an LLM guide get realistic numbers.

Communication

  • Rocket.Chat fit replace Slack for team use, with threads, calls, and integrations. Plan for at least 2 GB RAM, because e dey run on MongoDB and na MongoDB be the resource-heavy part. The main catch be say Rocket.Chat dey lock each release to one specific MongoDB major version. If you skip a version during upgrade, you fit leave your database stranded. Upgrade am one step at a time. The Rocket.Chat with Docker Compose guide dey explain the version ladder.
  • Matrix (Synapse) fit replace Slack and Discord with federated, end-to-end-encrypted network wey you control your own homeserver. Plan for 1–2 GB RAM, and expect the usage to grow as you join large public rooms. The main catch be say Synapse memory use fit increase sharply for big federated rooms. E must run on PostgreSQL. The default SQLite only work for single-user testing, and e fit fail as soon as you enable federation. If Synapse too heavy, the lighter Conduit or Dendrite servers still speak the same protocol.

Networking and access

  • WireGuard dey replace commercial VPN, and e dey give you private tunnel go your own IP and your other services. E dey use almost no money, e dey use under 50 MB, and e crypto dey run for kernel. The problem be say for container-based virtualization (OpenVZ, some LXC), the module dey fail with RTNETLINK answers: Operation not supported; na KVM you want. The self-hosted WireGuard VPN guide na the reference, and when you pair am with services wey bind to the tunnel, you fit keep everything completely away from public internet. If you no wan edit peer config by hand for every new device, running a Tailscale subnet router on the VPS go advertise that whole private range to your other machines instead, after you approve the route and make IP forwarding survive reboot.
  • Traefik dey replace nginx virtual hosts wey you write by hand and manual certificate renewal. E dey discover your containers through their Docker labels and fetch Let's Encrypt certs automatically. Plan for around 100 MB RAM. The problem be say the label-based config model fit confuse person at first, and one wrong label fit leave app without route and no clear error. The Traefik reverse proxy for multiple Docker apps guide dey made specifically to run several apps for this page behind one entry point.
  • AdGuard Home dey replace Pi-hole box and paid DNS filtering. E dey block ads and trackers for every device for your network at DNS layer. Plan for 100–150 MB RAM. The problem be say e want control port 53, and this one dey clash with systemd-resolved for Ubuntu. E no go start with listen udp 0.0.0.0:53: bind: address already in use until you free the port first.

Monitoring

  • Uptime Kuma dey replace Pingdom, UptimeRobot, and StatusPage with clean dashboard and alerts for almost any channel. Plan for 150–300 MB RAM. The main catch, wey people dey always miss, be say you suppose monitor your production box from different box. If Uptime Kuma dey run for the same server wey e dey watch, e no fit tell you when that server die. The Uptime Kuma status monitoring guide explain how to place am externally.
  • Zabbix dey replace Datadog and enterprise monitoring suites. E get deep agent-based metrics, triggers, and history. Plan for 2 GB RAM and more, plus separate database for am. The catch be say Zabbix powerful, but e genuinely heavy to set up. E too much if na only three containers you wan watch, but e fit well for fleet. Start with Uptime Kuma. Move to the Zabbix monitoring server when you get enough infrastructure to monitor.

Prometheus and Grafana no dey this list intentionally. Dem excellent for fleet-scale tooling, but dem heavy to run and tune pass wetin personal stack of two or three boxes need. For this scale, Uptime Kuma plus Zabbix answer the same questions with less maintenance.

Dashboards and control panels

Dem dey change the whole setup. Instead make you run compose files by hand, panel go manage the apps for you.

  • Cloudron replace that wish of “I want make this thing be one-click” with a polished app store, automatic TLS, and built-in backups. Plan for minimum 2 GB RAM; 4 GB go make am comfortable. The catch be say e get strong opinions and wan control the whole server. E free only for up to two apps; after that, na paid product.
  • CasaOS replace messy homelab dashboard with friendly app grid. E free and lightweight. Plan roughly 150 to 300 MB for CasaOS itself. The catch be say dem design am for trusted home network, and e no harden am for public internet. No expose am directly; reach am through WireGuard.
  • Coolify replace Heroku, Vercel, and Netlify with git-push deployments, databases, and previews for your own server. Plan for minimum 2 GB RAM. The catch be say na younger project wey dey change fast, so pin versions and read release notes before you upgrade. The Cloudron vs CasaOS vs Coolify comparison explain which one fit which person.

Developer and productivity tools

  • Gitea (or Forgejo) dey replace GitHub for private repositories, issues, and CI. Plan 200–500 MB RAM. The main catch be say Forgejo na community-governed fork of Gitea, and na the one wey many people dey recommend now; both good well-well, but choose one and back up the repositories and the database together. Repository backup without the database go lose every issue and pull request.
  • Paperless-ngx dey replace filing cabinet and paid document scanners. E dey use OCR for everything, so your documents go become searchable. Plan around 1 GB RAM, with CPU spikes during OCR. The main catch be say OCR results only good as your scans, and re-processing large archive dey slow. Tune am before you bulk-import ten years of paper.
  • Actual Budget dey replace YNAB and Mint with fast, local, private envelope budgeting. Plan around 150 MB RAM. The main catch be say automatic bank sync na separate add-on with its own setup. So out of the box, you go import transactions manually.
  • FreshRSS dey replace Feedly and the departed Google Reader. E be fast, private feed reader with mobile apps. Plan around 150 MB RAM. The main catch be say you need set up the cron-based feed refresh. Otherwise, feeds go only update when you happen open the page.
  • BookStack dey replace Notion and Confluence for documentation. E organize content as shelves, books, and pages. Plan around 500 MB RAM on PHP and MySQL. The main catch be say e dey structure content in its own way instead of free-form notes. Some people like am, while some find am rigid. Try am before you commit your whole wiki.
  • Home Assistant dey replace SmartThings and plenty vendor apps. E dey unite your smart home locally. Plan around 1 GB RAM. The main catch be say plenty of its features need local network access to your devices. So e fit work more naturally on hardware for your house than on remote VPS. If you must, run the dashboard remotely and bridge back.

A representative install

To make am concrete, na the full structure of one self-host: a compose file, a real certificate, and a backup. This na Uptime Kuma, but every app for the list dey follow the same pattern.

services:
  uptime-kuma:
    image: louislam/uptime-kuma:2
    container_name: uptime-kuma
    volumes:
      - ./data:/app/data
    ports:
      - "127.0.0.1:3001:3001"
    restart: unless-stopped
docker compose up -d
docker compose logs -f

Notice say 127.0.0.1: dey there, the app dey listen only on localhost, and reverse proxy like Traefik or nginx dey terminate TLS for front of am. If you bind am straight to 0.0.0.0:3001, na so people dey accidentally publish unencrypted admin panel to the whole internet.

Wetin you NO suppose self-host (for now)

  • Email. Na this one wey need honest talk. Most VPS providers dey block outbound port 25. You go see Connection timed out from telnet aspmx.l.google.com 25, and nothing dey fix am because na policy. Even if port 25 open, fresh IP wey no get reputation, PTR record, SPF, DKIM, and DMARC fit make your mail enter spam or dem reject am completely. Na real work wey you go dey do continuously; no be weekend project. If you still decide to do am, enter with open eyes using the self-hosted email with Mailcow guide, and expect to monitor deliverability for months.
  • Anything wey you no fit back up and restore reliably. If you never do test restore, you no get backup; na hope you get. No put irreplaceable data, your only copy of photos, or your accounts for service until you prove say restore dey work.
  • Your only copy of critical dependency. Self-hosted DNS server wey, when e crash, carry internet access for your whole network go down na bad first project. Keep upstream fallback.
  • Real-time safety systems. Home alarms, medical alerts, and anything wey five minutes of downtime fit cause real problem no belong for hobby box wey you dey upgrade Sunday night.

How to choose your first one, and the two non-negotiables

Pick the app wey go remove bill wey dey vex you, or privacy worry wey you truly dey feel. For practice, the best first installs na Vaultwarden and Uptime Kuma: both small, both useful immediately, and both no too hard to fix if you make mistake. Make one work from beginning reach end — install, certificate, backup, and restore test — before you add second one. The skill wey you dey build na operations, no be just clicking install.

Two things no get negotiation for every app above, no exception:

  1. TLS for everything wey public. Service wey use bare IP and plaintext na demo, no be real deployment. Put real certificate in front of am with Certbot and Let's Encrypt for nginx, or make Traefik handle am automatically. Then harden the front door with Fail2ban for SSH for Ubuntu 24.04.
  2. Backups wey you don actually restore. Automate nightly dump — database and data volume together — send am go outside the server, and once every month restore am for throwaway VPS to prove say e dey work. The day your disk die na wrong day to discover say the backup empty.

If you get these two right, self-hosting go dey enjoyable. If you skip dem, na countdown you dey start.

The options dey range from practical reach absurd, from family Minecraft server for a VPS to, if you like cautionary story, the world's least efficient datacenter.

FAQ

Wetin I suppose self-host first?

Vaultwarden. Password manager dey give you value every day, replace subscription, and force you learn the complete workflow, Docker, reverse proxy, TLS, and backups, for an app wey small enough to rebuild within ten minutes if you break am. Uptime Kuma na better second choice, so you go know about outages before your users know.

How much VPS I really need?

For one small app, 1 GB of RAM dey work. For box wey fit comfortably run some services, target 4 GB; 2 GB na the middle point wey people dey encounter silent Out-Of-Memory container kills and no fit understand why. RAM almost always na the limit; add disk based on the data wey you plan store, and expect Immich, Ollama, and anything wey get big database to need plenty of both.

Wetin I no suppose self-host?

Email first of all. Most providers block outbound port 25, and deliverability na full-time struggle. After that, no self-host anything wey you no fit back up and restore reliably, or any single point of failure wey fit cause serious harm when e go down, like DNS server wey no get fallback or home safety system. Everything else for this list dey okay to self-host.

I need Docker for all these things?

No, but e better make you use am. Every app for here get Docker image, and Docker give you clean installs, clean removals, easy version pinning, and portability go new host. Some apps (WireGuard, Zabbix) fit also install natively from apt if you prefer. Once you sabi one compose file, you sabi all of dem, and na why the whole list become easier to approach.

How I fit keep everything secure?

Four habits cover most of am: put TLS in front of everything, lock down SSH with key-only login and Fail2ban wey dey ban brute-force attempts, expose only the ports wey you truly need publicly and reach the rest through your WireGuard VPN, and update regularly while you dey read release notes so upgrade no go surprise you. Backups na the fifth habit; dem na your recovery when mistake slip past the first four.