Návrh a implementace domácího serveru na platformě Raspberry Pi s využitím ekosystému NixOS
Autor(ka) práce:
Šimek, Ondřej
Typ práce:
Bakalářská práce
Vedoucí práce:
Maryška, Miloš
Oponenti práce:
Sládek, Pavel
Jazyk práce:
Česky
Abstrakt:
Tato bakalářská práce se zabývá návrhem a implementací komplexního autonomního domácího serveru na hardwarové platformě Raspberry Pi. Je kladen hlavní důraz na vytvoření robustního a reprodukovatelného uzlu pomocí deklarativního operačního systému NixOS. Práce řeší problematiku self-hostingu, centralizace prvků chytré domácnosti (IoT) s důrazem na lokální zpracování dat a překonání síťových restrikcí poskytovatelů internetu (Carrier-Grade NAT) využitím reverzní proxy na VPS a WireGuard. Praktická část demonstruje využití metodiky Infrastruktura jako kód (IaC) pro dosažení atomických aktualizací a vysoké spolehlivosti systému, který paralelně obsluhuje herní server, IoT platformu a zajišťuje datovou redundanci.
Klíčová slova:
Raspberry Pi; NixOS; self-hosting; chytrá domácnost; Carrier-Grade NAT; WireGuard; Infrastruktura jako kód
Název práce:
Design and Implementation of a Home Server on the Raspberry Pi Platform Using the NixOS Ecosystem
Autor(ka) práce:
Šimek, Ondřej
Typ práce:
Bachelor thesis
Vedoucí práce:
Maryška, Miloš
Oponenti práce:
Sládek, Pavel
Jazyk práce:
Česky
Abstrakt:
This bachelor thesis deals with the design and implementation of a complex autonomous home server on the Raspberry Pi hardware platform. The emphasis is on creating a robust and reproducible node using the declarative operating system NixOS. The thesis addresses the issues of self-hosting, centralization of smart home (IoT) elements with an emphasis on local data processing and overcoming network restrictions of internet providers (Carrier-Grade NAT) by using a reverse proxy on a VPS and WireGuard. The practical part demonstrates the use of the Infrastructure as Code (IaC) methodology to achieve atomic updates and high system reliability, concurrently serving a gaming server, an IoT platform, and ensuring data redundancy.