Coolify, Dokploy czy CapRover: własny Heroku na VPS
Co dają Coolify, Dokploy i CapRover, jakie mają wymagania i porty, bezpieczna instalacja Coolify krok po kroku i kiedy wystarczy zwykły compose z nginx.
Redakcja serwisu Dealownia · ceny i fakty ze stron dostawców, jak sprawdzamy
Coolify, Dokploy i CapRover robią z VPS-a platformę w stylu Heroku: w panelu wskazujesz repozytorium albo obraz Dockera, wpisujesz domenę, a platforma buduje aplikację, uruchamia kontener, wystawia certyfikat HTTPS i przekierowuje ruch. Wszystkie trzy są darmowe do samodzielnego hostowania i wszystkie przejmują porty 80 i 443 na serwerze. To najważniejsza decyzja: taki panel stawiasz na osobnym, świeżym VPS-ie, a nie obok nginx i usług z innych poradników.
Co każdy z nich daje
Dane z dokumentacji i repozytoriów projektów, sprawdzone 12.11.2026:
| Coolify | Dokploy | CapRover | |
|---|---|---|---|
| Minimalne wymagania | 2 rdzenie, 2 GB RAM, 10 GB wolnego dysku | 2 GB RAM, 30 GB dysku | 1 GiB RAM, 5 GiB wolnego dysku, publiczne IPv4 |
| Architektura | amd64, arm64 | nie podano na stronie instalacji | AMD64, ARM64 |
| Panel zaraz po instalacji | port 8000 (oraz 6001 i 6002 dla odświeżania na żywo i terminala) | port 3000 | port 3000, hasło startowe captain42 |
| Proxy dla aplikacji | proxy Coolify z HTTPS | Traefik | nginx z Let’s Encrypt |
| Co wdraża | repozytorium Git, Dockerfile, Docker Compose, gotowy obraz; bazy danych; gotowe usługi z szablonów | aplikacje w wielu językach, Docker Compose, bazy (m.in. PostgreSQL, MySQL, MariaDB, MongoDB, Redis), ponad 600 szablonów | aplikacje, bazy i gotowe aplikacje „one-click” z listy |
| Kopie | konfiguracja kopii baz | automatyczne kopie baz na zewnętrzny magazyn, kopie wolumenów | brak w opisie projektu |
| Wiele serwerów | tak, kolejne serwery przez SSH | tak, zdalne serwery i Docker Swarm | tak, klaster Docker Swarm |
| Licencja | Apache 2.0 | Apache 2.0, z wyjątkiem katalogów /proprietary na osobnej licencji |
Apache 2.0 z aneksem ograniczającym modyfikowanie i redystrybucję płatnych funkcji |
Jak to czytać w praktyce:
- Coolify ma najszerszy zakres i pozwala zarządzać kilkoma serwerami z jednego panelu. Wymaga najwięcej zasobów z tej trójki.
- Dokploy stoi na Traefiku i ma mocny nacisk na Docker Compose i szablony. Dokumentacja wprost tłumaczy zapas 30 GB dysku tym, że budowanie obrazów potrafi zablokować system przy braku miejsca.
- CapRover ma najniższe wymagania z tej trójki i jest oparty na Docker Swarm i nginx. Ma też CLI (
npm install -g caprover) do konfiguracji i wdrożeń z własnego komputera.
Minimalne wymagania to wymagania samego panelu. Do nich dochodzą Twoje aplikacje i – co łatwo przeoczyć – budowanie obrazów z kodu, które bywa bardziej pamięciożerne niż działająca aplikacja. Dlatego przy panelu celuj wyżej niż minimum, a po kilku wdrożeniach sprawdź rzeczywiste zużycie w docker stats. Plany porównasz w rankingu VPS; niżej są oferty od 4 GB RAM.
Kiedy zwykły compose z nginx jest lepszy
Panel wdrożeniowy to wygoda, ale też kolejny element, który zużywa RAM, wymaga aktualizacji i jest celem ataku – ma dostęp do Dockera, czyli w praktyce do roota na serwerze. Zwykły Docker Compose z nginx na hoście, jak w poradniku o reverse proxy, jest lepszy, gdy:
- masz jedną–trzy aplikacje, które zmieniasz rzadko;
- serwer ma 1–2 GB RAM;
- na serwerze już działają usługi z innych poradników (Umami, n8n, Vaultwarden) – panel chce mieć porty 80 i 443 dla siebie;
- chcesz rozumieć każdy element konfiguracji i trzymać go w Gicie.
Panel ma sens, gdy wdrażasz często, kilka projektów naraz, z gałęzi Gita, i chcesz podglądać logi i zmieniać zmienne środowiskowe bez SSH. Gotowy szkielet compose bez panelu jest w poradniku o stacku Docker Compose.
Instalacja Coolify krok po kroku
Opisujemy Coolify, bo jego dokumentacja najdokładniej opisuje zabezpieczenie panelu na czas instalacji. Dla Dokploy i CapRovera zasady są te same: świeży serwer, porty panelu zamknięte dla świata, natychmiastowe ustawienie konta i hasła.
Czego potrzebujesz
- Świeży VPS z Ubuntu 24.04 LTS (dokumentacja zaleca wydania LTS), co najmniej 2 vCPU i 2 GB RAM, lepiej 4 GB.
- Dostęp przez SSH kluczem i użytkownika z sudo – jak w poradniku od zera, ale bez instalowania nginx (zająłby porty 80 i 443).
- Docker, jeśli już jest, zainstalowany oficjalną metodą. Docker ze snapa trzeba według dokumentacji usunąć przed instalacją.
- Domenę z możliwością dodania rekordu A, np.
coolify.example.pl.
Krok 1. Zapora u dostawcy, nie tylko ufw
Dokumentacja Coolify ostrzega, że reguły, które Docker dopisuje do iptables, potrafią ominąć ufw, więc zablokowanie portu w ufw nie gwarantuje, że opublikowany port kontenera jest zamknięty. Dlatego ustaw zaporę w panelu dostawcy VPS (np. Cloud Firewall w Hetznerze – opis w poradniku Pierwszy serwer w Hetzner Cloud) i wpuść tylko:
- TCP 22 (SSH),
- TCP 80 i 443 (aplikacje i certyfikaty).
Portów 8000, 6001 i 6002 nie otwieraj. Dokumentacja wymienia je jako potrzebne do dostępu przez sam adres IP – zamiast tego dostaniesz się do panelu tunelem SSH. Jeśli dostawca nie ma zapory w panelu, dokumentacja Coolify zaleca narzędzie ufw-docker.
Krok 2. Pobierz i obejrzyj skrypt instalacyjny
Oficjalna instrukcja to curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash uruchomione jako root. Taki skrypt robi na serwerze wszystko z pełnymi uprawnieniami, więc najpierw go pobierz i przeczytaj:
Według dokumentacji skrypt instaluje podstawowe pakiety (curl, wget, git, jq, openssl), instaluje Docker Engine, ustawia logowanie i demona Dockera, tworzy katalogi w /data/coolify, generuje klucze SSH do zarządzania serwerem i uruchamia Coolify. Źródło skryptu jest też w repozytorium projektu na GitHubie (scripts/install.sh w gałęzi v4.x). Jeśli wolisz zrobić każdy krok samodzielnie, dokumentacja opisuje instalację ręczną: katalogi, klucz SSH, pliki compose, sekrety, sieć Dockera i start przez Compose.
Gdy przeczytałeś skrypt:
Krok 3. Konto administratora od razu, przez tunel
To najważniejszy moment całej instalacji. Dokumentacja Coolify ostrzega, że kto pierwszy wejdzie na stronę rejestracji, ten zostaje administratorem instancji i dostaje dostęp do roota na serwerze. Pierwsze konto można założyć w ciągu 10 minut od startu Coolify. Dzięki zaporze z kroku 1 nikt poza Tobą nie dojdzie do portu 8000, a Ty wejdziesz tunelem. Na swoim komputerze:
Otwórz http://localhost:8000 i od razu załóż konto z długim, unikalnym hasłem z menedżera haseł. Jeśli zobaczysz komunikat „Setup window closed”, dokumentacja każe zrestartować kontener coolify i odświeżyć stronę:
Krok 4. Panel pod własną domeną z HTTPS
- Dodaj rekord A
coolify.example.pl→203.0.113.10i poczekaj, aż się rozejdzie (dig +short coolify.example.pl). Dokumentacja wymaga, żeby DNS wskazywał serwer z Coolify, zanim zmienisz adres panelu. - W panelu: Settings → General, pole URL:
https://coolify.example.pl. Adres musi zawierać protokół; panel pod ścieżką (np.example.pl/coolify) nie jest obsługiwany. - Nie używaj dla panelu domeny, którą ma któraś aplikacja – dokumentacja ostrzega przed nieprzewidywalnym zachowaniem certyfikatów i routingu.
Od tej chwili panel, odświeżanie na żywo i terminal działają przez porty 80 i 443, a porty 8000, 6001 i 6002 mogą zostać zamknięte na stałe. Tunel SSH możesz zamknąć.
Krok 5. Pierwsza aplikacja
W panelu dodaj nową aplikację – według dokumentacji źródłem może być repozytorium Git, Dockerfile, plik Docker Compose albo gotowy obraz. Dla aplikacji podajesz domenę (np. https://app.example.pl, z rekordem A na ten sam serwer), port, na którym aplikacja słucha w kontenerze, i zmienne środowiskowe. Proxy Coolify wystawi certyfikat i przekieruje ruch. Bazy danych dodajesz jako osobne zasoby – nie publikuj ich portów na świat; aplikacja łączy się z bazą wewnątrz sieci Dockera.
Krok 6. Kopie i aktualizacje
Dokumentacja Coolify zaznacza, że za przetestowaną strategię kopii i odtwarzania odpowiadasz Ty. Minimum:
- kopie baz danych skonfigurowane w panelu,
- kopia katalogu
/data/coolify(konfiguracja, klucze – dokumentacja osobno wymienia plik/data/coolify/source/.envz sekretami, m.in.APP_KEY; sama kopia też musi być chroniona jak sekret) i wolumenów aplikacji poza serwerem, np. narzędziem restic jak w poradniku o kopiach, - test odtworzenia co jakiś czas.
Aktualizacje panelu zrób dopiero po wykonaniu kopii. Dostępne są kanały preview i nightly (--preview, --nightly przy instalacji) – na serwerze z ważnymi aplikacjami zostań przy stabilnym.
Jeśli wybierzesz Dokploy albo CapRovera
- Dokploy: instalator
curl -sSL https://dokploy.com/install.sh | sh– ten sam sposób: pobierz plik (curl -sSL https://dokploy.com/install.sh -o dokploy-install.sh), przeczytaj, uruchom jako root (sudo sh dokploy-install.sh). Dokumentacja podaje, że instalacja się nie powiedzie, jeśli porty 80, 443 lub 3000 są zajęte, i każe otworzyć port 3000 dla strony konfiguracji. Zamiast otwierać go dla świata, wejdź tunelemssh -N -L 3000:127.0.0.1:3000 …i od razu załóż konto. Konkretną wersję zainstalujesz skrypteminstall.shdołączonym do danego wydania na GitHubie. - CapRover: instalator pobierasz do pliku (
curl -fsSL https://get.caprover.com -o caprover-install.sh), więc łatwo go przejrzeć przedsudo bash caprover-install.sh; dokumentacja podaje też tryb samego sprawdzenia serwera bez zmian:sudo bash caprover-install.sh --check. Dokumentacja wymaga publicznie dostępnych portów 80, 443 i 3000. Hasło startowecaptain42zmień od razu po pierwszym logowaniu, a do tego czasu ogranicz port 3000 w zaporze dostawcy do własnego adresu IP.
Najczęstsze problemy
- Instalator kończy się błędem zajętego portu. Na serwerze działa nginx, Apache albo inny kontener na 80/443. Panel potrzebuje tych portów – użyj świeżego serwera.
- Certyfikat dla aplikacji się nie wystawia. Rekord A nie wskazuje jeszcze serwera albo port 80 jest zamknięty w zaporze dostawcy – walidacja Let’s Encrypt wymaga go.
- Budowanie aplikacji zawiesza serwer. Brak RAM albo dysku podczas budowania obrazu. Zwiększ plan, dodaj swap tylko jako zabezpieczenie albo buduj obraz poza serwerem (w CI) i wdrażaj gotowy.
- Dysk się zapełnia. Stare obrazy i warstwy budowania. Sprawdź
docker system dfi usuń nieużywane obrazy. - Panel dostępny po IP z internetu. Port 8000 (Coolify) albo 3000 (Dokploy, CapRover) jest otwarty w zaporze dostawcy. Zamknij go – ufw tego nie załatwi.
Źródła
Sprawdzone 12.11.2026:
- Coolify – instalacja (wymagania, skrypt, co robi, konto administratora w 10 minut, snap): https://coolify.io/docs/get-started/installation
- Coolify – zapora i porty (8000, 6001, 6002, Docker a ufw): https://coolify.io/docs/knowledge-base/server/firewall
- Coolify – wprowadzenie (co wdraża, wiele serwerów, odpowiedzialność za kopie): https://coolify.io/docs/get-started/introduction
- Coolify – ustawienia instancji i domeny panelu: https://coolify.io/docs/core/instance-management/instance-settings, https://coolify.io/docs/knowledge-base/domains
- Coolify – repozytorium i licencja: https://github.com/coollabsio/coolify
- Dokploy – instalacja (wymagania, porty): https://docs.dokploy.com/docs/core/installation
- Dokploy – repozytorium, funkcje i licencja: https://github.com/Dokploy/dokploy, https://github.com/Dokploy/dokploy/blob/canary/LICENSE.MD
- CapRover – pierwsze kroki (wymagania, porty, hasło startowe, CLI): https://caprover.com/docs/get-started.html
- CapRover – repozytorium i licencja: https://github.com/caprover/caprover