Minął ponad rok od ostatniego wpisu więc czas na kolejny 😑
Self-hosting to, w skrócie, praktyka uruchamiania i korzystania z usług sieciowych (stron, serwerów aplikacji, baz danych, narzędzi, gier – you name it) na własnym sprzęcie. Pozwala w prosty (relatywnie…) sposób korzystać z open-source’owych alternatyw dla popularnych serwisów internetowych i stać się dostawcą swoich własnych usług.
W tym wpisie będzie trochę o tym dlaczego warto się zainteresować self-hostingiem i jakie ciekawe usługi możesz uruchomić w swojej domowej sieci.
TL;DR: Na dole wrzuciłem swoje top 10 aplikacji do self-hostingu, które możesz uruchomić – w prosty sposób, na starym komputerze, intelu NUC czy Raspberry Pi.
Podstawowym powodem dla którego decydujemy się na self-hosting jest uzyskanie pełnej kontroli nad własnymi danymi. Hostując swoje aplikacje, możesz uzyskać wiele korzyści:
- Eliminujesz lub ograniczasz zbieranie informacji przez dostawców aplikacji i usług, sieci reklamowe, instytucje, czy dostawców internetu. To zjawisko zazwyczaj związane jest z poszukiwaniem ekonomicznego zysku – znając Cię lepiej, łatwiej jest Tobie coś sprzedać. Prawdziwy zakres wykorzystania zbieranych w ten sposób danych jest jednak trudny do oszacowania. Jeśli chcesz poczytać więcej na ten temat poszukaj hasła surveillance capitalism (kapitalizm nadzoru/inwigilacji). Chociażby tutaj, w angielskim wpisie na Wikipedii.
- Ograniczasz ryzyko wycieku czy utraty danych. Twoje dane są tak bezpieczne jak Twoja sieć domowa. Chyba, oczywiście, że decydujesz się wystawić hostowane usługi do Internetu.
- Nie polegasz na zmieniających się modelach biznesowych serwisów internetowych. Te często z czasem oferują nam redukcję funkcjonalności, nowe koncepcje, zmiany modelu licencjonowania, czy podwyżki cen. Dobrym przykładem drastycznej zmiany modelu jest firma Adobe. Będąc liderem w swoim obszarze, firma zdecydowała się zupełnie zrezygnować z modelu licencji wieczystych (perpetual) i, w zasadzie zmusić nowych użytkowników do modelu subskrypcyjnego. Niestety, wśród oprogramowania open-source nie ma jeszcze godnej alternatywy dla większości rozwiązań Adobe.
- Nie płacisz 💵 (poza odrobiną sprzętu i masą czasu 🤨). To może ale nie musi robić różnicę. Jeśli korzystasz np. z oprogramowania Atlassian Jira, wiesz ile można płacić za średniej wielkości instancję prostego. Akurat w tym obszarze znajdziesz sporo rozwiązań open-source.
- Możesz się po drodze wiele nauczyć i odkryć ciekawe technologie i narzędzia.
Korzyści oczywiście jest więcej. Jeżeli szukasz powodów bardziej ideowych, polecam zapoznać się z inicjatywą Redecentralize – a więc ponownej de-centralizacji Internetu. Ponownej, bo w tzw. Golden Era of The Internet, większość usług była zdecentralizowana. Na rynku istniało wiele alternatyw i często stali za nimi pasjonaci nowych technologii. Self-hosting jest próbą powrotu do tych założeń.
Z ideą self-hostingu bardzo blisko związane jest też oprogramowanie Open-Source (Open Source Software – OSS) czy, w praktyce, darmowego oprogramowania Open Source (Free Open Source Software – FOSS). Naturalnie chcemy mieć dostęp do kodu źródłowego usług które uruchamiamy w domowej sieci, a właściwie – chcemy aby eksperci, którzy znają wykorzystywana narzędzia, mieli do niego dostęp.
Jak się za to zabrać?
Na starcie nie musisz inwestować pieniędzy – jeśli umiesz w IT to zazwyczaj masz jakiś stary sprzęt czy Raspberry Pi gdzieś w szufladzie. Jeśli nie masz, można to tanio zorganizować, kupując coś używanego. Chociaż apetyt rośnie szybko i już niedługo zaczniesz oglądać najlepsze setupy na r/homelab 💸 (jeśli jeszcze tego nie robisz). Po kolei:
- Wybierz sprzęt – o tym piszę kawałek dalej.
- Zainstaluj system operacyjny i odpowiednie narzędzia. Ja osobiście polecam wirtualizację (Proxmox VE), natomiast możesz zacząć od zwykłego Linuxa. Wygodnie będzie wybrać w miarę standardową dystrybucję, jak np. Ubuntu w wersji 20.x lub nowszej. Dzięki temu, większość aplikacji które będziemy chcieli testować, powinna być kompatybilna i prosta w instalacji.
- Testuj i wybieraj aplikacje – tutaj zaczyna się zabawa. Lista możliwości jest bardzo długa, do większości rzeczy z których korzystasz w Internecie znajdziesz godną alternatywę. Poniżej znajdziesz moje top 10 i najlepszą, moim zdaniem, listę oprogramowania do self-hostingu w sieci.
1. Sprzęt
Na czym uruchamiać własne usługi? Na starcie, warto od razu odrzucić 🚫 VPS u zewnętrznego dostawcy czy chmurę. Większość osób które umieją w self-hosting wybiera stawianie usług na własnym sprzęcie. Tylko wtedy skorzystasz z pełnej prywatności i kontroli nad swoimi danymi. To oczywiście nie wyklucza dostępu do zasobów spoza własnej sieci.
Wystawianie usług „w Internet” to temat na osobne opracowanie i wymaga odrobiny znajomości zagadnień związanych z bezpieczeństwem sieci. Na marginesie, hostując wyłącznie w sieci lokalnej stosowanie dobrych praktyk w tym zakresie też nie zaszkodzi. Wiele osób wystawiając swoje usługi na zewnątrz korzysta z tuneli, chociażby takich jak darmowa usługa oferowana przez Cloudflare. Już w podstawowej wersji uzyskujemy dobrą ochronę przed atakami DDoS, maskowanie IP domowej sieci czy certyfikat SSL. Wiele osób mimo wszystko łączy się ze swoimi zasobami bezpośrednio. Kilka ciekawych punktów znajdziesz w tej dyskusji: Do you use Cloudflare for your self-hosted website?.
Alternatywą może być postawienie usługi typu VPN lub Wireguard właśnie na np. chmurze Amazon Web Services, (o czym pisałem wcześniej w poście Jak postawić darmowy serwer VPN w chmurze Amazon) i kierowanie ruchu do naszego serwera przez taki tunel.
Wracając do własnego sprzętu…
Najlepszy sprzęt do self-hostingu
Raspberry Pi które leży w szufladzie. Zanim zdecydujesz się wybrać tą opcję, sprawdź czy kluczowe dla Ciebie usługi są dostępne w architekturze ARM. Nie każda usługa zadziała 🙂 Z tego powodu nie polecam również zakupu RPi do takich zastosowań – są lepsze opcje.
Stary komputer – Najlepsza opcja na początek, oczywiście jeśli masz pod ręką nieużywany sprzęt. W ten sposób sprawdzisz czy self-hosting jest dla Ciebie. Jeśli tak – w dalszym horyzoncie warto zorganizować coś mniejszego.
Własny serwer – jeśli to niezła opcja ale wiele urządzeń, zwłaszcza starszych, konsumuje masę prądu, wytwarza dużo ciepła i hałasu. Dlatego jeśli nie musisz – nie polecam. Nie wybieraj serwerów rackowych. Ceny są bardzo atrakcyjne, podobnie wydajność, no i taki rack z np. Dell R720 wygląda świetnie, ale prawdziwe korzyści zdobędziesz kiedy Twój setup będzie pracował 24x7x365, przez kilka kolejnych lat. Wspomniany Dell R720 w obecnych stawkach może kosztować blisko 100 PLN na miesiąc, licząc średni pobór energii w okolicy ~200W, przy stawkach z marca 2022. Dla komputera typu Intel NUC będzie to ok. 5 PLN. Nie są to duże kwoty, ale:
- Wraz z dodatkowymi urządzeniami (router od dostawcy internetu, NAS, switch etc.) zużycie prądu przez nasz homelab może być znacznie wyższe,
- ceny energii z pewnością będą rosły 📈,
- wyższe zużycie energii to również więcej miejsca, hałasu i ciepła które wytwarza sprzęt,
- self-hosting, aby się powiódł, powinien wymagać minimalnego, względem wymagań, nakładu czasu i pieniędzy.
Komputery PC SFF (Small Form-factor) – jeśli już chcesz wydać jakieś pieniądze, najlepszą opcją będzie zakup używanego czy poleseangowego komputera PC SFF od jednego z trzech topowych producentów (Dell, Lenovo, HP), zalewających rynek sprzętu biurowego tanimi, zintegrowanymi jednostkami. Micro PC będzie absolutną bestią pod kątem wydajności bo w przeciwieństwie do aplikacji działających w Internecie, te uruchamiane dla siebie muszą obsługiwać tylko tylko 1 (lub kilku) użytkowników. Nie mają więc, poza kilkoma wyjątkami, ogromnych wymagań sprzętowej. Same urządzenia zazwyczaj posiadają zasilacze „laptopowe”. Warte rozważenia są modele:
- Lenovo ThinkCentre M710q Tiny (lub M715q)
- HP EliteDesk 800 Mini (G2, G3)
- HP EliteDesk 705 Mini
- Dell OptiPlex 7070 Micro
- Dell OptiPlex 7060 Micro
Powyższe propozycje pochodzą z artykułu Project TinyMiniMicro który bardzo polecam.
Intel NUC – moje preferowane rozwiązanie. Wysoka wydajność, nieco wyższa cena od biurowych SFF (w zależności od konfiguracji, w 2022 za nowego NUC’a, zapłacisz od 1000-4000 PLN). Zazwyczaj do zestawu musisz zamówić osobno pamięć RAM czy dysk (w obudowie jest miejsce na m.2 oraz 2.5′ SSD). Istnieją rozmaite alternatywy w bardzo zbliżonym form factor, często znacznie tańsze. Ważne aby obsługiwały architekturę x86, posiadały energooszczędne procesory i mały foot-print.
2. System i narzędzia
Można różnie rozwijać swój warsztat, większość usług daje możliwość uruchamiania w różny sposób, na różnych środowiskach. Jeżeli chcesz często sprawdzać nowe aplikacje, łatwo przenosić dane i ustawienia czy budować zaawansowane, własne rozwiązania (stack aplikacji) warto skorzystać z następujących narzędzi:
Wirtualizacja
Ja korzystam z Proxmox Virtual Environment (Proxmox VE) które jest oprogramowaniem open-source służącym do wirtualizacji. Łączy w sobie hypervisor KVM, kontenery LXC, storage i funkcjonalności sieciowe. Dzięki wirtualizacji możesz tworzyć różne środowiska na jednym fizycznym serwerze. Na moim Proxmoxie mam dedykowane maszyny m.in. dla:
- Stale działających usług, z których często korzystam. Tutaj mam zazwyczaj system Ubuntu Server, usługi działają jako kontenery Docker’a zarządzane przez Portainer
- Środowisko testowe dla nowych usług (modus operandi jak powyżej)
- Kontenery LXC obsługujące wybrane usługi (DNS, reverse proxy)
- Środowiska z Ubuntu lub innymi systemami operacyjnymi które uruchamiam na określony czas. Są to zazwyczaj maszyny posiadające duży apetyt na zasoby systemowe, które mogłyby zbędnie obciążać serwer działając 24/7. W tej kategorii są również maszyny ze środowiskiem graficznym, z którymi możesz łączyć się za pomocą SPICE, noVNC czy xterm.js. Ta kategoria oczywiście wykracza poza temat self-hostingu, ale możliwość tworzenia takich środowisk to duża zaleta wirtualizacji.
W temacie Proxmox VE warto obejrzeć materiały Techno Tim, np. ten – Before I do anything on Proxmox I do this first…. Znajdziesz tam kilka przydatnych informacji o tym co warto zrobić na świeżej instalacji Proxmox. Oczywiście na kanale Techno Tim znajdziesz też np. tutorial instalacji czy konfiguracji Proxmox.
Techno Tim ma też dużo świetnych materiałów w rozmaitych tematach z obszaru homelab, networkingu, systemów operacyjnych, programowania czy ogólnego IT. Ogólnie – polecam.
Dodatkowym atutem Proxmox jest możliwość prostego tworzenia kopii zapasowych kontenerów czy maszyn wirtualnych. Jeśli potrzebujesz bardziej kompletnego rozwiązania do zarządzania back-upami maszyn wirtualnych, kontenerów czy fizycznych serwerów warto sprawdzić Proxmox Backup Serwer. Jest to również oprogramowanie open-source, które dobrze współpracuje z Proxmox VE.
Docker
docker
i docker-compose
– polecam własny przewodnik i wprowadzenie do tych narzędzi. Jeżeli na swoim VE zainstalowałeś Ubuntu Server 18.x LTS, to przy instalacji możesz zaznaczyć. Alternatywą jest Kubernetes, natomiast jego przewagi widać przede wszystkim w instalacjach produkcyjnych, gdzie korzystamy z wielu węzłów (node) i zależy nam na wysokiej dostępności usług.
Podstawowe usługi
Większość usług które będziemy instalowali ma za zadanie dostarczać nam konkretnych funkcji, z których będziemy aktywnie korzystali, jak np. notatnik czy manager haseł. Część jednak ma specjalne znaczenie dla poprawnego działania naszego środowiska, i w zasadzie poza ich uruchomieniem i nadzorem nie chcemy mieć z nimi codziennej interakcji. Do takich usług należą m.in:
- Serwer DNS, który może np. blokować reklamy czy zarządzać domenami w sieci lokalnej.
- Reverse Proxy, dzięki któremu możemy zapewnić szyfrowany dostęp dla naszych usług poprzez
https
czy tworzyć subdomeny dla usług działających na tej samej maszynie (a więc zamiasthttp://192.168.1.1:8004
mamy np.https://wiki.lan
👌. - Zarządzanie kontenerami, które pozwala nam ograniczyć konieczność łączenia się przez SSH ze swoją maszyną i ręcznego uruchamiania poleceń Dockera.
- Start-page, z którym co prawda mamy codzienną interakcję, ale właśnie dlatego należy, moim zdaniem, do podstawowych usług. Start-page to nasze okno do własnej infrastruktury, gdzie możemy zdefiniować linki do aplikacji czy usług, a często także dodać linki do stron w Internecie czy panele wyświetlające parametry pracy systemu. Jeśli chcesz zobaczyć jak z tym tematem radzą sobie użytkownicy Reddita sprawdź r/startpages.
Dla mnie faworytami w powyższych kategoriach są obecnie Pi-hole, nginx (zarządzany przez Nginx Proxy Manager), Portainer i flame, które znalazły się w moim top 10. W ten sposób przechodzimy do najciekawszej części, a więc…
3. Aplikacje
Co możesz hostować?
W zasadzie większość popularnych usług internetowych ma posiada open-source’owe alternatywy które w prosty sposób możemy uruchomić na własnym sprzęcie 😉 z jednym małym, istotnym wyjątkiem, o którym za chwilę. Najczęściej wybieranymi usługami są:
- Alternatywy dla Dropboxa – czyli usługi współdzielenia plików (filesharing)
- Współtworzenie dokumentów w stylu Google Docs (collaboration software)
- Obsługa mediów (filmy, seriale, muzyka, etc.). Tutaj dochodzi oczywiście ogromna „szara” strefa usług do pozyskania mediów, czyli w skrócie – wyszukiwania i ściągania ich za pomocą protokołów takich jak Torrent czy Usenet
- Systemy wersjonowania (GIT) czy repozytoria obrazów
- Notatniki, dzienniki, własne Wiki, zarządzanie wiedzą
- Kalendarzy, listy kontaktów (chociażby te obsługiwane protokołem CalDav)
- Listy zadań do zrobienia (TODO’s), automatyzacje i inne narzędzia podnoszące produktywność
- Strony startpage – portale dla wewnętrznych usług i aplikacji, zapewniające łatwy dostęp do wszystkich zasobów
Na koniec warto opisać szerzej dwa konkretne zastosowania:
- E-mail, z którego którego (chyba) warto zrezygnować
- Usługi społecznościowe
Self-hosting email 💌
Istotnym wyjątkiem w self-hostingu jest e-mail 📧. Większość osób jest zgodna – poprawna konfiguracja e-maila jest trudna, wymaga poznania wielu nowych obszarów, a sam protokół jest przestarzały. Jak to ładnie ujął autor wpisu Reliable, Deliverable and Self-Hosted Email – jeśli nie byłeś sysadminem w latach 90′, praca z open-source’owym oprogramowaniem e-mail będzie skomplikowana.
Dodatkowo, nawet przy najlepszej konfiguracji, ryzykujemy że nasze serwery e-mail zostaną oznaczone jako spam (IP trafi na black-listy) i skutecznie wykluczone z komunikacji. Nasze maile będą wtedy wpadały z automatu w foldery spamowe u większości naszych odbiorców. Nie mamy na to wpływu, zwłaszcza jeśli współdzielimy adresy IP naszych serwerów z innymi użytkownikami.
Warto pamiętać że e-mail jest z natury usługą gdzie nie mamy pełna kontrola nad danymi. Maile albo dostajemy (a więc ich kopia jest na serwerze nadawcy), albo wysyłamy (kopia ląduje na serwerze odbiorcy). Dlatego od strony kontroli nad danymi wiele nie tracimy.
Oczywiście jeśli dobrze poszukasz, znajdziesz kilka opinii ludzi, którym ta sztuka się udała, i którzy nie mają problemów z wysyłaniem i odbieraniem maili. Jednym z rozwiązań które wydają się być sensowne jest Mail in the box.
Self-hosting usługi e-mail wymaga wystawienia naszej maszyny w Internecie, chociaż to chyba jest sprawa jasna.
Usługi społecznościowe 🧟♂️
Self w self-hosting jest dosyć istotne. Natura serwisów społecznościowych sprawia, że niosą najwięcej korzyści (zarówno dla użytkowników jak i dostawców) gdy docierają do największej liczby osób, stąd zazwyczaj jest to domena internetowych gigantów. Jeżeli chcesz docierać ze swoim przekazem do szerszego grona, zazwyczaj będziesz, mimo wszystko, potrzebował kont w jednej (lub kilku) globalnych sieciach społecznościowych. Ja sam korzystam często z LinkedIn, ale posiadam też konta na Twitterze czy Instragramie.
W przeciwieństwie do e-maila, hostować sieci społecznościowe zdecydowanie warto, oczywistą sprawą jest natomiast ograniczony zasięg. Self-hosting ma sens nawet w małej skali – stworzenie serwisu dla rodziny do rozmowy i czy wymiany zdjęć, lub grupy znajomych skupionych wokół wspólnego hobby. Warto pamiętać że wszystkie liczące się sieci społecznościowe są darmowe, co, zgodnie z popularną w Internecie cytatem, oznacza jedno:
Co więcej, jest sporo świetnych, otwartych technologii przeznaczonych do hostowania własnych sieci społecznościowych.
Same rozwiązania często wykorzystują model federacyjny, dzięki któremu indywidualne serwery łączą się w grupy, a ich użytkownicy mogą korzystać ze wspólnych profili i prostej komunikacji między federacjami. Fediverse (z połączenia słów federation i universe, największa federacja sieci społecznościowych) to obecnie ponad 10 000 serwerów i 5 000 000 użytkowników.
Najpopularniejsze rozwiązania w fediversie to obecnie Mastodon (klon Twittera) czy Diaspora, są tam natomiast również rozwiązania do hostowania video (PeerTube) czy zdjęć (Pixelfed). Na poniższym diagramie znajdziesz wybrane platformy fediverse oraz obsługiwane przez nie protokoły komunikacji.
Moje top 10 aplikacji do self-hostowania
Poniżej moich 10 faworytów do self-hostingu, kolejność przypadkowa:
- Navidrome
GPL-3.0
Go/Javascript
– to open-source’owy odtwarzacz muzyki dostępny z poziomu przeglądarki internetowej. Alternatywa dla Spotify. Jest kompatybilny ze znanym standardem odtwarzaczy muzyki Subsonic, a więc możesz uzyskać dostęp do swojej muzyki przy użyciu wielu aplikacji mobilnych obsługujących ten standard. Na iOS polecam aplikację substreamer. Bardzo fajny interfejs, moim zdaniem najlepszy z całego ekosystemu Subsonic/Airsonic. - Nginx Proxy Manager
MIT
Nodejs/Docker
– uproszcza zarządzanie dostępem do aplikacji i usług, nazwami domen czy HTTPS. W moich home-labie obsługuje certyfikaty Let’sCert przy użyciu DNS Chalenge. Dzięki temu wszystkie usługi dostępne są pod adresamihttps://usluga.domenahomelabu.pl
, np.- https://music.homelab.pl
- https://uptime.homelab.pl
- Bitwarden
AGPL-3.0
C#
– manager haseł, podstawowa aplikacja. Posiada fajną wtyczkę do przeglądarki. Dostęp do serwera aplikacji jest możliwy tylko poprzez HTTPS (patrz punkt wyżej, była to podstawowy powód dla którego zainstalowałem Nginx Proxy Manager). - Portainer
zlib
Go/JavaScript
– rozbudowane narzędzie do zarządzania Twoim ekosystemem dockerowym. Pozwala na tworzenie „stacków” – jeden stack to jedendocker-compose
, jedno środowisko. To w zasadzie tutaj instaluje i sprawdzam 90% nowych aplikacji czy usług. Dla mnie podstawowa aplikacja na każdej nowej maszynie wirtualnej gdzie ma działać więcej niż 1 aplikacja. - Uptime Kuma
MIT
JavaScript
– świetne narzędzie do monitoringu dostępności hostów czy usług. Dzięki niemu możemy 900 razy na godzinę sprawdzać czy nasz homelab może połączyć się z Internetem, ale również jaki jest status wewnętrznych usług. Bardzo przydatne w rozwiązywaniu problemów z łącznością, posiada fajny dashboard który możesz wyświetlić na dodatkowym ekranie, bez logowania. - Flame
MIT
TypeScript
– przykład start page – kategorii apilkacji ułatwiających dostęp do wewnętrznych zasobów. Zazwyczaj są to po prostu ładnie zorganizowane listy linków. Docelowo chciałbym zastąpić własną stroną/apką. Jeśli chcesz zobaczyć ciekawe inspiracje polecam r/startpages. - Nextcloud
AGPL-3.0
PHP
– potężna aplikacja na licencji MIT która posiada m.in. funkcjonalności zbliżone do Drop-boxa (folder Nextcloudowy natywnie obsługiwany i synchronizowany na Windows, Linux czy iOS). Posiada również zarządzanie kontaktami, możliwość współtworzenia dokumentów a’la Google Docs czy masę innych widgetów i pluginów. Ja wykorzystuję przede wszystkim do file-sharingu. Honorable mention w tej kategorii to Seafile. - Gitea
MIT
Go
– przez długi czas używałem na swoim home-labie GitLab’a (MIT
Ruby
, duży footprint). Ponieważ nie korzystałem z opcji CI/CD, zdecydowałem się poszukać „lżejszego” rozwiązania. Gitea pod tym względem jest idealna. Posiada bardzo prosty interface, ułatwia proste zarządzanie i tworzenie repozytoriów, podpowiada komendy do wklejenia na hoście aby dodać remote, etc.. - Pi-hole
EUPL
Shell/Python
– rozwiązanie rodowodem z Rasperry Pi, również dostępne jako docker image na dorosłe systemy jak np. Ubuntu. Pi-hole to w zasadzie Ad blocker (bloker reklam) na poziomie sieciowym – serwera DNS. Aby z niego skorzystać musisz uruchomić usługę oraz wprowadzić zmiany w konfiguracji routera domowego (wskazując adres usługi jako serwer DNS), lub, jeśli to niemożliwe, w konfiguracji indywidualnych urządzeń pracujących w sieci.Jest to idealny sposób na wyeliminowanie większości reklam na wszystkich urządzeniach korzystających z Twojej sieci – nie tylko w przeglądarkach web, ale także w aplikacjach mobilnych czy na urządzeniach typu Smart TV. Pamiętaj o pobraniu aktualnych list niebezpiecznych hostów! - Librespeed
LGPL-3.0
PHP
– drobna aplikacja, usprawniająca testowanie problemów z siecią. Taki własny speedtest.net. - Joplin
MIT
Nodejs
– synchronizacja notatników. Trafia na top 10 ale wciąż szukam alternatyw… Posiada fajną aplikację na iOS. - xBrowserSync – synchronizacja zakładek (bookmarków) pomiędzy przeglądarkami. Działa bezobsługowo, są wtyczki do popularnych przeglądarek desktopowych i mobilnych. Wymaga trochę konfiguracji, zarządzanie i wyszukiwanie z poziomu samej wtyczki nie jest intuicyjne, ale zakładki są zawsze zsynchronizowane.
Honorable mentions:
Powyżej wymieniłem tylko aplikacje które rozwiązują potrzebę end-to-end 😉. Jest cała masa ciekawych rzeczy, z którymi można eksperymentować i budować własne, złożone aplikacje czy automatyzacje. Chciałbym o tym kiedyś więcej napisać, dzisiaj wymieniam kilka najciekawszych opcji: Grafana, InfluxDB (o którym pisałem we wprowadzeniu do InfluxDB), Redis, Node Red, Broker MQTT, …?
Co czytać i gdzie szukać?
Osobiście korzystam w zasadzie z 2 źródeł informacji o nowościach, koncepcjach czy usługach do self-hostingu. Polecam oba jako podstawową lekturę:
- r/selfhosted – częste posty z nowymi wydaniami aplikacji lub interesujące recenzje. Bardzo dużo meta-informacji, rozmów o sprzęcie. Polecam ⭐⭐⭐⭐⭐
- awesome-selfhosted na Github – najobszerniejsza, aktualna lista interesujących aplikacji i usług gotowych do uruchomienia na Twoim sprzęcie. Większość posiada status FOSS, wszystkie są darmowe. Każdy link zawiera info o licencji oraz języku w którym zostało stworzone, jeśli zakładasz że będziesz fork-ował 😉 Tam, gdzie to dostępne, znajdziesz bezpośrednie linki do demo aplikacji. Polecam ⭐⭐⭐⭐⭐
Honorable mentions w kategorii materiałów dla zainteresowanych self-hostingiem:
- r/homelab – wspomniany już wcześniej, tutaj znajdziesz bardzo fajne setupy home-labów. A więc jeśli zastanawiasz się jak zbudować własną sieć, uwzględniając w tym zasoby do self-hostingu, ale także ogarniając bezpieczeństwo sieci, backupy czy dostęp Wi-Fi …
- awesome-sysadmin na Github – nie jest to najpiękniejsza strona hobby ale warto zadbać o bezpieczeństwo dostępu do Twoich zasobów. Na awesome-sysadmin znajdziesz najciekawsze narzędzia do prostej administracji własnymi zasobami, w tym backupy, DNS, LDAP, zarządzanie logami, monitoring czy bazy danych.
fin
To tyle na dzisiaj, dzięki za lekturę. Mam nadzieję że było chociaż trochę interesujące. Minął ponad rok od ostatniego wpisu na blogu. Chciałbym napisać że mam nadzieję że niedługo uda mi się napisać coś więcej w tym temacie 😊, ale realistycznie – do usłyszenia w 2024 😅
✌ 🦎
PS
Na zdjęciu tytułowym nie ma mgły 😷 to smog w Qingdao (Chiny) w okolicy listopada 2015 roku. Jest 9:00 rano, widoczność momentami nie przekracza kilku metrów. Oddycha się ciężko, Air Quality Index pokazuje ponad 400 punktów w okolicy, ale wiadomo, że w rzeczywistości jest gorzej. Poniżej bonus 😉 Qingdao Downtown z portu olimpijskiego, kilka dni wcześniej.
13 Comments
Piszesz lekko i trafiasz w tematykę, która jest bardzo ciekawa. Tylko dlaczego by nie raz na miesiąc wpisik? No dobra na poczatek raz na pół roku ;P
dzięki za miły komentarz 🙂 trafia tu niewiele osób więc ciężko czasami znaleźć motywację, ale ostatnio staram się pisać więcej i mam nadzieję że kolejny artykuł pojawi się już niedługo 🙂
Genialny art , może mało detali ale potwierdza to co robię i myślę – niestety mieszkam w „zadupiu” i ogranicza mnie bardzo internet , prądem się nie martwię już dawno do 1,5 kw mam na to rozwiązanie .
Jeśli miał bym lepsze łącza plus backup już dawno bym vps, hostingi, detyki odłączył – tym bardziej iż te ich 99% bez awarii to fikcja
Dzięki za komentarz! u siebie najlepiej bez dwóch zdań 😉
To może za rok napiszesz artykuł o tym jak wykonujesz kopie zapasowe swojej maszyny do self-hostingu? Jestem ciekaw jaki masz na to sposób? 🙂
Dziękuję za komentarz 🙂 generalnie staram się robić regularnie backup przez Proxmox na zewnętrzny dysk ale nie ćwiczyłem nigdy restore więc mogę się rozczarować kiedyś 😉 natomiast dla najważniejszych kontenerów odpalam co jakiś czas tar’a na wolumenach z konfiguracjami. Więc generalnie nie jest to 100% profesjonalnie 🤞
Jako fajną alternatywę dla Joplin, polecam Obsidian 🙂
Dzięki za artykuł 😊
Dzięki za komentarz 🙂 obsidian wygląda spoko, korzystałem przez jakiś czaz z Trilium natomiast nie wiem czy Joplin nie zamienię na coś prostszego w stylu pastebin, mniej szukania po notatnikach wpisach etc 😉
Dzięki za artykuł! Co prawda nie wchodzę w pełne „self”, bo internet jest jak dla mnie na to za słaby (UPC, max. upload 60 Mbit, a nie chcę rozwalać połowy mieszkania aby wejść ze światłowodem i 300 Mbit), ale opis apek zdecydowanie się przyda do wykorzystania na VPSie 🙂
[…] Polecam też artykuł, który mnie zainspirował do takiej zabawy:https://jaszczur.eu/czym-jest-self-hosting […]
super artykuł, widać, że masz super solidną wiedzę… szacunek 🙂 Informacje dla mnie laika bardzo przydatne, choć trudne do pojęcia w całości 🙂
alternatywa dla Joplina – Obsidian
[…] podaje portal jaszczur.eu, self-hosting w skrócie to: praktyka uruchamiania i korzystania z usług sieciowych (stron, […]