SSD Nodes Learn
Przewodniki Matt ConnorAutor: Matt Connor · Zaktualizowano 2026-07-24

Co warto self-hostować w 2026 roku

Zestawienie 25 aplikacji self-hosted na rok 2026. Sprawdź realne zużycie RAM i dysku oraz błędy konfiguracyjne dla każdego rozwiązania w Docker na Ubuntu.

Co budujesz

To nie jedna aplikacja, lecz zestawienie. Jest to centrum dla wszystkich pozostałych usług na tej stronie: dwadzieścia pięć aplikacji, które faktycznie warto uruchamiać na własnym VPS w 2026 roku, pogrupowanych według przeznaczenia. Dla każdej z nich podano usługę, którą zastępuje, realne zużycie RAM i dysku oraz jeden kluczowy problem, który wystąpi po pominięciu danej konfiguracji. Linki prowadzą do pełnych instrukcji krok po kroku, jeśli takie istnieją.

Prowadzę hosting VPS od piętnastu lat i większość tych usług uruchamiam na własnych maszynach. Poniższe wartości zasobów to rzeczywiste zużycie aplikacji przy niewielkim obciążeniu, a nie "minimalne wymagania" z materiałów marketingowych. Traktuj je jako budżet, do którego należy dodać zapas.

Wymagania wstępne i realia

Każda aplikacja tutaj działa na czystym Ubuntu 24.04 KVM VPS z uprawnieniami root lub sudo. Prawie wszystkie są dostarczane jako kontenery Docker, więc po zainstalowaniu Docker jest gotowy na całą listę:

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

Jeśli komendy docker zwracają błąd permission denied while trying to connect to the Docker daemon socket, pominięto krok grupowania lub nie otwarto nowej powłoki — należy się wylogować i zalogować ponownie. Jeśli docker compose zwraca docker: 'compose' is not a docker command, posiadasz przestarzały, samodzielny plik binarny; powyższy skrypt instaluje nowoczesny plugin Compose, który wywołuje się jako docker compose (ze spacją, a nie myślnikiem).

Trzy realia kształtują wszystko poniżej. Po pierwsze, ograniczeniem jest RAM, a nie dysk lub CPU. VPS z 1 GB RAM uruchomi jedną małą aplikację i nic więcej. 4 GB to optymalna wartość dla maszyny typu "self-host kilku usług". 2 GB to problematyczny środek, gdzie początkujący instaluje trzecią usługę, trafia na ciche zabójstwo procesu przez Out-Of-Memory i nie wie, dlaczego kontener zniknął — sudo dmesg pokazuje linię Out of memory: Killed process pochłoniętą przez daemon. Po drugie, każda usługa publiczna wymaga nazwy i certyfikatu — samo IP działa podczas testów, ale zawodzi w momencie, gdy aplikacja mobilna lub przeglądarka wymagają zaufania. Po trzecie, dwa porty decydują o połowie opcji: porty 80 i 443 muszą być dostępne dla maszyny dla automatycznego TLS, natomiast port wychodzący 25 jest blokowany przez większość dostawców, dlatego e-mail znajduje się na liście "do nieinstalowania" na końcu.

Pliki i zdjęcia

  • Nextcloud zastępuje Google Drive, Dropbox i Google Calendar w jednej pakiecie. Budżet: 1–2 GB RAM plus miejsce na pliki. Główna pułapka: SQLite nadaje się tylko do wersji demonstracyjnej; w produkcji należy używać PostgreSQL od pierwszego uruchomienia, ponieważ migracja bazy danych po załadowaniu danych jest najczęstszą przyczyną awarii Nextcloud. Pełny przewodnik Nextcloud na VPS z Docker, TLS i backupami zapewnia poprawną konfigurację.
  • Immich zastępuje Google Photos, w tym aplikację mobilną z automatycznym przesyłaniem zdjęć oraz wyszukiwanie twarzy i obiektów. Budżet: 6 GB RAM — dokumentacja Immich podaje to jako minimum, 8 GB zapewnia komfort; najbardziej obciąża kontener machine-learning oraz dysk (ilość danych plus ok. 20% na miniatury). Pułapka: Immich często wprowadza zmiany łamiące kompatybilność między wersjami, więc nie należy ślepo wykonywać latest; należy przypiąć wersję i czytać release notes przed każdą aktualizacją. Przewodnik self-hosted Immich photo library opisuje bezpieczną ścieżkę aktualizacji.
  • Seafile zastępuje Dropbox, oferując najszybszy silnik synchronizacji spośród trzech wymienionych. Budżet: ok. 1 GB RAM. Pułapka: Seafile przechowuje pliki jako bloki adresowane treściowo, a nie jako zwykłe pliki na dysku, więc przeglądanie danych przez ls jest niemożliwe i należy używać narzędzi Seafile do backupu, zamiast kopiować folder.

Hasła

  • Vaultwarden zastępuje płatne pakiety Bitwarden, LastPass oraz 1Password za pomocą lekkiego serwera w Rust, który obsługuje protokół Bitwarden, dzięki czemu każda oficjalna aplikacja i rozszerzenie Bitwarden działa poprawnie. Budżet: 100–200 MB RAM i minimalne zużycie dysku. Pułapka: ta maszyna przechowuje wszystkie hasła, więc TLS i backupy są obowiązkowe — należy ustawić ADMIN_TOKEN jako hash Argon2, ponieważ token w formie tekstowej w pliku compose stanowi klucz główny dostępny w czystym tekście. Przewodnik Vaultwarden password manager to najlepszy sposób na rozpoczęcie self-hostingu.

Multimedia

  • Jellyfin zastępuje Plex oraz Netflix (dla własnej biblioteki) — jest w pełni open-source, bez kont i paywalli dla streamingu zdalnego. Budżet: 1–2 GB RAM w spoczynku, ale wysokie obciążenie CPU podczas transkodowania. Pułapka: programowe transkodowanie strumienia 4K przeciąży mały VPS; należy zapewnić maszynie akcelerację sprzętową lub przechowywać pliki w formacie wspieranym przez klientów (Direct Play), aby serwer jedynie przesyłał dane. Przewodnik Jellyfin media server on a VPS wyjaśnia różnice.
  • Navidrome zastępuje Spotify dla własnej muzyki, umożliwiając streaming do dowolnej aplikacji zgodnej z Subsonic. Budżet: 150–300 MB RAM — napisany w Go, zużywa minimalne zasoby. Pułapka: pierwsze skanowanie biblioteki czyta tagi wszystkich plików i może trwać godzinę przy dużej kolekcji; błędne tagi ID3 skutkują problemami z przeglądaniem.
  • Audiobookshelf zastępuje Audible i aplikacje do podcastów, przechowując pozycję odtwarzania między urządzeniami. Budżet: 200–500 MB RAM. Pułapka: wymaga ścisłej struktury folderów (jeden folder na książkę); nieuporządkowany folder importu powoduje powstanie nieczytelnej biblioteki, której naprawa jest czasochłonna.

Automatyzacja i AI

  • n8n zastępuje Zapier i Make, oferując wizualny edytor workflow bez opłat za pojedyncze zadania. Budżet: 400 MB–1 GB RAM. Pułapka: n8n szyfruje dane uwierzytelniające kluczem generowanym przy pierwszym uruchomieniu; utrata tego klucza (lub brak ustawienia N8N_ENCRYPTION_KEY i wymuszenie regeneracji) sprawia, że wszystkie zapisane dane stają się nieczytelne. Przewodnik self-hosted n8n with HTTPS zapewnia trwałość klucza i instalację certyfikatu dla adresów webhook.
  • Ollama zastępuje subskrypcję ChatGPT do lokalnego, prywatnego wnioskowania LLM. Budżet zależy od modelu: model 7–8B wymaga ok. 8 GB RAM, a każdy model zajmuje 4–8 GB na dysku. Pułapka: na VPS bez GPU wnioskowanie jest wolne — liczy się liczba słów na sekundę, a nie natychmiastowa odpowiedź jak w API; należy dostosować oczekiwania lub wynająć maszynę z GPU. Przewodnik run Ollama to self-host an LLM podaje realne dane.

Komunikacja

  • Rocket.Chat zastępuje Slack dla zespołów, oferując wątki, połączenia i integracje. Budżet: od 2 GB RAM wzwyż, ze względu na zużycie przez MongoDB. Pułapka: Rocket.Chat wymaga konkretnej wersji głównej MongoDB dla danej wersji aplikacji; pominięcie wersji podczas aktualizacji uszkodzi bazę danych — należy aktualizować krok po kroku. Przewodnik Rocket.Chat with Docker Compose prowadzi przez proces aktualizacji.
  • Matrix (Synapse) zastępuje Slack i Discord, oferując federowaną sieć z szyfrowaniem end-to-end. Budżet: 1–2 GB RAM, zużycie rośnie wraz z dołączaniem do dużych publicznych pokoi. Pułapka: zużycie pamięci Synapse gwałtownie rośnie w dużych pokojach federowanych; wymagana jest baza PostgreSQL — domyślna SQLite działa tylko do testów pojedynczego użytkownika i zawodzi przy federacji. Jeśli Synapse jest zbyt ciężki, zaleca się lżejsze serwery Conduit lub Dendrite.

Sieci i dostęp

  • WireGuard zastępuje komercyjne VPN, zapewniając prywatny tunel do własnego IP i usług. Budżet: minimalny — poniżej 50 MB, kryptografia działa w jądrze systemu. Pułapka: w wirtualizacji kontenerowej (OpenVZ, niektóre instancje LXC) moduł zgłasza błąd RTNETLINK answers: Operation not supported; zalecany jest KVM. Przewodnik self-hosted WireGuard VPN jest materiałem referencyjnym; połączenie VPN z usługami ograniczonymi do tunelu pozwala całkowicie odciąć je od publicznego internetu.
  • Traefik zastępuje ręcznie konfigurowane wirtualne hosty nginx oraz manualne odnawianie certyfikatów — automatycznie wykrywa kontenery poprzez etykiety Docker i pobiera certyfikaty Let's Encrypt. Budżet: ok. 100 MB RAM. Pułapka: model konfiguracji oparty na etykietach jest na początku nieintuicyjny, a jeden błędny label powoduje brak routingu bez wyraźnego błędu. Przewodnik Traefik reverse proxy for multiple Docker apps jest przeznaczony do obsługi wielu aplikacji z tej listy za jednym punktem wejścia.
  • AdGuard Home zastępuje Pi-hole oraz płatne filtrowanie DNS, blokując reklamy i trackery na poziomie DNS dla wszystkich urządzeń w sieci. Budżet: 100–150 MB RAM. Pułapka: usługa wymaga portu 53, który koliduje z systemd-resolved w systemie Ubuntu — aplikacja nie uruchomi się z błędem listen udp 0.0.0.0:53: bind: address already in use, dopóki port nie zostanie zwolniony.

Monitorowanie

  • Uptime Kuma zastępuje Pingdom, UptimeRobot i StatusPage, oferując czytelny dashboard i powiadomienia na różne kanały. Budżet: 150–300 MB RAM. Pułapka: należy monitorować maszynę produkcyjną z innej maszyny — Uptime Kuma działająca na tym samym serwerze, który monitoruje, nie powiadomi o awarii tego serwera. Przewodnik Uptime Kuma status monitoring opisuje instalację zewnętrzną.
  • Zabbix zastępuje Datadog i korporacyjne systemy monitoringu, oferując zaawansowane metryki agentowe, wyzwalacze i historię. Budżet: od 2 GB RAM wzwyż plus własna baza danych. Pułapka: Zabbix jest potężny i trudny w konfiguracji — jest zbyt rozbudowany do monitorowania trzech kontenerów, ale odpowiedni dla całych flot. Zacznij od Uptime Kuma; przejdź do Zabbix monitoring server, gdy będziesz posiadać rzeczywistą infrastrukturę.

Prometheus i Grafana nie zostały uwzględnione w tym zestawieniu celowo: są to doskonałe narzędzia dla skali przedsiębiorstwa, ale są cięższe w utrzymaniu niż wymaga tego prywatny stos dwóch lub trzech maszyn, a Uptime Kuma i Zabbix odpowiadają na te same pytania przy mniejszym nakładzie pracy.

Panele sterowania i dashboardy

Zmieniają one model zarządzania — zamiast ręcznego używania plików compose, panel zarządza aplikacjami.

  • Cloudron zastaje model "instalacji jednym kliknięciem", oferując gotowy sklep z aplikacjami, automatyczny TLS i wbudowane backupy. Budżet: minimum 2 GB RAM, komfortowo 4 GB. Pułapka: rozwiązanie jest restrykcyjne i przejmuje pełną kontrolę nad maszyną; jest darmowe tylko do dwóch aplikacji — powyżej wymagana jest płatna subskrypcja.
  • CasaOS zastępuje nieuporządkowane dashboardy homelab, oferując przejrzystą siatkę aplikacji; jest darmowy i lekki. Budżet: ok. 150–300 MB dla samego CasaOS. Pułapka: zaprojektowany dla zaufanych sieci domowych, nie jest utwardzony pod kątem publicznego internetu — nie należy wystawiać go bezpośrednio; należy uzyskiwać do niego dostęp przez WireGuard.
  • Coolify zastępuje Heroku, Vercel i Netlify — oferuje wdrożenia git-push, bazy danych i środowiska podglądu na własnym serwerze. Budżet: minimum 2 GB RAM. Pułapka: to młody projekt o szybkim tempie rozwoju, dlatego należy przypinać wersje i czytać release notes przed aktualizacją. Porównanie Cloudron vs CasaOS vs Coolify wyjaśnia, które rozwiązanie jest odpowiednie dla kogo.

Narzędzia deweloperskie i produktywności

  • Gitea (lub Forgejo) zastępuje GitHub w zakresie prywatnych repozytoriów, zgłoszeń (issues) i CI. Budżet: 200–500 MB RAM. Pułapka: Forgejo to społecznościowy fork Gitea i jest obecnie częściej zalecany; oba rozwiązania są doskonałe, ale należy wybierać jedno i tworzyć backupy jednocześnie dla repozytoriów oraz bazy danych — backup repozytorium bez bazy danych powoduje utratę wszystkich zgłoszeń i pull requestów.
  • Paperless-ngx zastępuje segregator i płatne skanery dokumentów, wykonując OCR, aby dokumenty były przeszukiwalne. Budżet: ok. 1 GB RAM, z nagłami CPU podczas OCR. Pułapka: jakość OCR zależy od jakości skanów, a ponowne przetwarzanie dużego archiwum jest wolne — należy skonfigurować proces przed masowym importem danych.
  • Actual Budget zastuje YNAB i Mint, oferując szybkie, lokalne i prywatne budżetowanie metodą kopertową. Budżet: ok. 150 MB RAM. Pułapka: automatyczna synchronizacja z bankiem to oddzielna wtyczka wymagająca własnej konfiguracji; domyślnie należy importować transakcje ręcznie.
  • FreshRSS zastępuje Feedly i wyłączony Google Reader — szybki, prywatny czytnik kanałów z aplikacjami mobilnymi. Budżet: ok. 150 MB RAM. Pułapka: należy skonfigurować odświeżanie kanałów przez cron, w przeciwnym razie kanały aktualizują się tylko podczas otwierania strony.
  • BookStack zastępuje Notion i Confluence w dokumentacji, organizując treści jako półki, książki i strony. Budżet: ok. 500 MB RAM (PHP i MySQL). Pułapka: strukturyzuje treść w sztywny sposób zamiast jako wolne notatki, co dla jednych jest zaletą, a dla innych ograniczeniem — należy przetestować rozwiązanie przed przeniesieniem całej wiki.
  • Home Assistant zastępuje SmartThings i dziesiątki aplikacji producentów, integrując inteligentny dom lokalnie. Budżet: ok. 1 GB RAM. Pułapka: wiele funkcji wymaga lokalnego dostępu sieciowego do urządzeń, więc rozwiązanie lepiej działa na sprzęcie domowym niż na zdalnym VPS — dashboard można uruchomić zdalnie, łącząc go z domem przez mostek.

Przykładowa instalacja

Dla zobrazowania: oto pełny model self-hostingu: plik compose, realny certyfikat i backup. Przykład dotyczy Uptime Kuma, ale każda aplikacja z listy działa według tego samego schematu.

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

Należy zwrócić uwagę na 127.0.0.1: — aplikacja nasłuchuje tylko na localhost, a reverse proxy (np. Traefik lub nginx) kończy sesję TLS przed nią. Wiązanie bezpośrednio do 0.0.0.0:3001 powoduje przypadkowe wystawienie niezaszyfrowanego panelu administracyjnego do publicznego internetu.

Czego NIE instalować samodzielnie (jeszcze)

  • E-mail. To szczera uwaga. Port wychodzący 25 jest blokowany przez większość dostawców VPS — wystąpi błąd Connection timed out od telnet aspmx.l.google.com 25 i nie da się tego naprawić, to polityka dostawcy. Nawet przy otwartym porcie 25, nowy adres IP bez reputacji, rekordu PTR, SPF, DKIM i DMARC spowoduje trafienie wiadomości do spamu lub jej odrzucenie. To stała praca, a nie projekt na weekend. Jeśli decydujesz się na to, użyj przewodnika self-hosted email with Mailcow i przygotuj się na wielomiesięczne monitorowanie dostarczalności.
  • Czegoś, czego nie można niezawodnie zbackupować i przywrócić. Jeśli nie przeprowadziłeś testowego przywracania, nie posiadasz backupu, lecz jedynie nadzieję. Nie umieszczaj nieodwracalnych danych — jedynej kopii zdjęć czy kont — w usłudze, dopóki proces przywracania nie zostanie potwierdzony.
  • Jedynej kopii krytycznej zależności. Samodzielny serwer DNS, który po awarii odcina internet w całej sieci, jest złym projektem na start. Należy zapewnić alternatywny serwer nadrzędny (upstream fallback).
  • Systemów bezpieczeństwa czasu rzeczywistego. Alarmy domowe, powiadomienia medyczne lub wszystko, gdzie pięciominutowa przerwa w działaniu stanowi realny problem, nie powinno znajdować się na hobbystycznej maszynie aktualizowanej w niedzielne wieczory.

Jak wybrać pierwszą usługę i dwie zasady bezwzględne

Wybierz aplikację, która eliminuje koszt subskrypcji lub problem z prywatnością. W praktyce najlepszymi pierwszymi instalacjami są Vaultwarden oraz Uptime Kuma: obie są lekkie, obie są natychmiast użyteczne i obie wybaczą błędy. Skonfiguruj jedną usługę od początku do końca — instalacja, certyfikat, backup, test przywracania — zanim dodasz drugą. Budujesz umiejętność operacyjną, a nie tylko klikanie "install".

Dwie rzeczy są bezwzględne dla każdej aplikacji powyżej, bez wyjątków:

  1. TLS dla wszystkiego, co publiczne. Usługa dostępna przez samo IP bez szyfrowania to wersja testowa, a nie wdrożenie. Użyj prawdziwego certyfikatu za pomocą Certbot and Let's Encrypt on nginx lub pozwól Traefik działać automatycznie. Następnie zabezpiecz dostęp za pomocą Fail2ban for SSH on Ubuntu 24.04.
  2. Backupy, które zostały faktycznie przywrócone. Zautomatyzuj nocne zrzuty danych — bazę danych i wolumeny danych razem — wysyłaj je poza maszynę, a raz w miesiącu przywracaj na tymczasowym VPS, aby potwierdzić działanie. Dzień awarii dysku to najgorszy moment na odkrycie, że backup był pusty.

Jeśli zadbasz o te dwie kwestie, self-hosting staje się przyjemnością. Jeśli je pominiesz, zaczyna się odliczanie do awarii.

Opcje wahają się od praktycznych po absurdalne: od rodzinnego Minecraft server on a VPS po, jeśli szukasz przestrogi, the world's least efficient datacenter.

FAQ

Co powinienem zainstalować jako pierwsze?

Vaultwarden. Menedżer haseł dostarcza codzienną wartość, zastępuje subskrypcję i wymusza naukę całego procesu — Docker, reverse proxy, TLS i backupy — na aplikacji na tyle małej, że można ją odbudować w dziesięć minut w razie błędu. Uptime Kuma to świetny drugi krok, dzięki któremu dowiesz się o awariach przed użytkownikami.

Ile naprawdę potrzebuję zasobów VPS?

Dla jednej małej aplikacji wystarczy 1 GB RAM. Dla komfortowej maszyny typu "kilka usług" celuj w 4 GB — 2 GB to poziom, na którym użytkownicy trafiają na ciche zabójstwa procesów przez Out-Of-Memory i nie potrafią ustalić przyczyny. RAM jest prawie zawsze ograniczeniem; dobierz dysk do planowanych danych i przygotuj się na to, że Immich, Ollama oraz bazy danych będą wymagać najwięcej zasobów.

Czego nie powinienem instalować samodzielnie?

Przede wszystkim e-mail — port wychodzący 25 jest blokowany przez większość dostawców, a walka o dostarczalność to praca na pełen etat. Następnie wszystkiego, czego nie można niezawodnie zbackupować i przywrócić, oraz każdego pojedynczego punktu awarii, którego przerwa w działaniu powoduje realne szkody (np. serwer DNS bez zapasowego rozwiązania lub system bezpieczeństwa domu). Reszta listy jest dostępna do instalacji.

Czy potrzebuję Dockera do wszystkiego?

Nie, ale warto go używać. Każda aplikacja tutaj posiada obraz Docker, który zapewnia czyste instalacje, łatwe usuwanie, łatwe przypinanie wersji i przenoszalność na nowy host. Kilka aplikacji (WireGuard, Zabbix) można również zainstalować natywnie przez apt, jeśli wolisz. Gdy opanujesz jeden plik compose, opanujesz wszystkie, co czyni całą listę przystępną.

Jak zadbać o bezpieczeństwo?

Cztery nawyki pokrywają większość potrzeb: stosuj TLS przed każdą usługą, zabezpieczaj SSH poprzez logowanie wyłącznie za pomocą kluczy oraz Fail2ban banning brute-force attempts, wystawiaj publicznie tylko niezbędne porty i korzystaj z WireGuard VPN do reszty, oraz regularnie aktualizuj system, czytając release notes, aby uniknąć niespodzianek. Piątym nawykiem są backupy — stanowią one drogę powrotną, gdy zawiedzie jedna z czterech poprzednich zasad.

#self-hosting#docker#open-source#vps#homelab