Mój tech stack
Fundamenty Prywatnej Chmury i Aplikacji
Od lat stawiam na niezależność, wydajność i pełną kontrolę, dlatego mój stack firmowy opiera się w dużej mierze na rozwiązaniach open-source i self-hosted. Całość działa na własnych serwerach w dwóch niezależnych centrach danych, wspieranych przez VPS-y w Hetznerze, tworząc solidną, prywatną chmurę na której rozwijam i hostuje komercyjne usłgi, aplikacje.
Poniżej znajdziesz listę kluczowych narzędzi, z których korzystam na co dzień, podzieloną według ich zastosowania. To nie jest wszystko ale będę dodawał z czasem.
I. Fundamenty: Infrastruktura i Wirtualizacja
Podstawą wszystkiego jest stabilna i wydajna platforma do wirtualizacji oraz niezawodny system backupu. To one zapewniają ciągłość działania i bezpieczeństwo danych.
-
Proxmox Virtual Environment (VE)
Otwartoźródłowa platforma do wirtualizacji, która łączy maszyny wirtualne (KVM) i kontenery (LXC). Działa w klastrze z High Availability (HA), co gwarantuje, że awaria jednego serwera nie powoduje przerwy w działaniu usług.
Strona oficjalna Proxmox VE -
Proxmox Backup Server (PBS)
Dedykowane rozwiązanie do backupu, idealnie integrujące się z Proxmox VE. Umożliwia tworzenie przyrostowych, deduplikowanych i szyfrowanych kopii zapasowych, minimalizując zużycie przestrzeni dyskowej.
Strona oficjalna Proxmox Backup Server
II. Sieć i Bezpieczeństwo
Warstwa sieciowa to pierwsza linia obrony i kręgosłup komunikacji. Korzystam z zaawansowanych firewalli i nowoczesnych rozwiązań VPN, aby zapewnić bezpieczeństwo i elastyczność.
-
OPNsense / pfSense
Potężne, otwartoźródłowe firewalle, które służą jako główna brama sieciowa, router i serwer VPN. Dzięki wbudowanym funkcjom, takim jak WAF (Web Application Firewall) i integracji z HAProxy, chronią aplikacje webowe przed atakami.
Strona oficjalna OPNsense | Strona oficjalna pfSense -
HAProxy
Niezwykle szybki i niezawodny load balancer oraz serwer proxy. Rozdziela ruch pomiędzy serwery aplikacyjne, zapewniając wysoką dostępność i skalowalność publicznie dostępnych usług.
Strona oficjalna HAProxy -
Tailscale
Nowoczesna sieć VPN typu mesh oparta na protokole WireGuard. Umożliwia tworzenie bezpiecznej, płaskiej sieci prywatnej łączącej wszystkie moje serwery i urządzenia, niezależnie od ich fizycznej lokalizacji.
III. Bazy Danych i Przechowywanie Danych
Dane to najcenniejszy zasób. Korzystam z redundantnych klastrów baz danych oraz skalowalnych systemów do przechowywania plików.
-
MySQL & PostgreSQL Cluster (HA)
Dwa najpopularniejsze systemy relacyjnych baz danych, działające w klastrach z wysoką dostępnością (High Availability). Zapewniają niezawodność i spójność danych dla moich aplikacji.
Strona oficjalna MySQL | Strona oficjalna PostgreSQL -
Minio
Wysokowydajny, rozproszony system przechowywania obiektów, kompatybilny z API S3. Działa w klastrze z replikacją, służąc jako prywatne miejsce na backupy i pliki multimedialne oraz CDN dla stron i aplikacji dockerowych.
IV. Orkiestracja, Wdrożenia i Zarządzanie Aplikacjami
Większość moich aplikacji działa w kontenerach. Te narzędzia automatyzują i upraszczają proces ich wdrażania i zarządzania.
-
Docker Swarm
Natywne narzędzie do orkiestracji kontenerów Docker. Prostota i łatwość zarządzania Swarmem idealnie pasują do mojej skali operacji, zapewniając skalowalność i odporność na awarie.
Dokumentacja Docker Swarm -
Komodo
Hostowana we własnym zakresie platforma do zarządzania serwerami, wdrożeniami i automatyzacją. Komodo integruje w jednym miejscu zarządzanie serwerami (z alertami), budowanie obrazów Docker z kodu, wdrażanie stacków Docker Compose oraz centralne zarządzanie konfiguracją.
-
Coolify
Otwartoźródłowa alternatywa dla Heroku/Vercel, również hostowana u siebie. Podobnie jak Komodo, upraszcza proces wdrażania aplikacji prosto z repozytoriów Git, automatyzując cały cykl życia aplikacji.
V. Automatyzacja i DevOps
Automatyzacja jest kluczem do efektywnego i bezbłędnego zarządzania infrastrukturą.
-
Ansible
Narzędzie do automatyzacji i zarządzania konfiguracją (Infrastructure as Code). Wykorzystuję playbooki Ansible do instalacji, konfiguracji i utrzymania praktycznie każdego elementu mojego stacku.
-
Gitea
Lekki, szybki i hostowany na własnym serwerze serwis Git. Służy jako centralne repozytorium dla wszystkich moich projektów, skryptów Ansible i kodu źródłowego oraz prowadzenia projektów dla klientów.
-
n8n
Platforma do automatyzacji przepływów pracy (workflow automation). Pozwala łączyć różne aplikacje i usługi (API) w zautomatyzowane procesy, oszczędzając czas na powtarzalnych zadaniach.
VI. Monitoring i Diagnostyka
Wiedza o tym, co dzieje się z infrastrukturą i aplikacjami, jest niezbędna do utrzymania ich stabilności.
-
OpenSearch
Rozproszony silnik analityczny i wyszukiwania. Używam go do centralnego zbierania, analizowania i przeszukiwania logów z całej infrastruktury, co ułatwia diagnostykę i monitorowanie. Również jak silnik wyszukiwarki dla np Shopware
-
Uptime Kuma
Proste narzędzie do monitorowania dostępności usług (tzw. "heartbeat monitoring"). Sprawdza, czy moje strony internetowe i API działają poprawnie, i wysyła powiadomienia w razie awarii. Monitoruje usługi, domeny, api.
-
Beszel
Lekkie i proste narzędzie do monitorowania serwerów i kontenerów. Śledzi zużycie CPU, pamięci i sieci dla każdego kontenera, oferując konfigurowalne alerty bez konieczności wystawiania go na publiczny internet. Kiedyś korzystałem z Zabbix, ale łatwność i to czego potrzebuje skierowała mnie do Beszel.
-
Sentry
Platforma do monitorowania błędów i wydajności aplikacji w czasie rzeczywistym. Dzięki Sentry natychmiast dowiaduję się o problemach w kodzie, co pozwala na szybką reakcję i naprawę. Wiem o błędach zanim klient mi to zgłosi :)
VII. Aplikacje Użytkowe
Na mojej infrastrukturze działają również aplikacje, które wspierają mnie w pracy, komunikacji czy zarządzaniu prywatnymi danymi.
-
Listmonk
Hostowany we własnym zakresie system do zarządzania newsletterami. Daje pełną kontrolę nad danymi subskrybentów i wysyłką wiadomości.
-
SFTPGo
Elastyczny serwer do bezpiecznego transferu plików (SFTP, FTP/S, WebDAV). Używam go do bezpiecznego udostępniania plików, np. dokumentów dla księgowości.
-
Immich (w ramach OpenMediaServer)
Doskonała, hostowana we własnym zakresie alternatywa dla Google Photos, działająca na moim serwerze NAS z OpenMediaServer i Dockerem. Automatycznie tworzy kopie zapasowe zdjęć i filmów z telefonów. Kiedyś miałem w iCloud pakiet 2TB na rodzine teraz starcza mi 200GB, na iCloud trzymam tylko zdjęcia z ostatniego roku cała historia jest u mnie na serwerzez zewnętrzną kopią :)