Der ultimative Heimserver: Eigenbau mit ZimaBoard 832 – Zima Store Online Zum Inhalt springen
Zima Store OnlineZima Store Online
Der ultimative Heimserver: Eigenbau mit ZimaBoard 832

Der ultimative Heimserver: Eigenbau mit ZimaBoard 832

Eva Wong ist die Technical Writer und resident tinkerer bei ZimaSpace. Eine lebenslange Geek mit einer Leidenschaft für Homelabs und Open-Source-Software, sie spezialisiert sich darauf, komplexe technische Konzepte in zugängliche, praktische Anleitungen zu übersetzen. Eva ist der Meinung, dass Self-Hosting Spaß machen und nicht einschüchternd sein sollte. Durch ihre Tutorials befähigt sie die Community, Hardware-Setups zu entmystifizieren, vom Bau ihres ersten NAS bis hin zur Beherrschung von Docker-Containern.

In dieser Blogserie haben wir das Privileg, die bemerkenswerte Reise von D. Rowland zu teilen, einem treuen Community-Mitglied, das seit der Crowdfunding-Phase von ZimaBoard vor zwei Jahren bei uns ist. Er kaufte drei Boards, jedes mit einem einzigartigen Anwendungsszenario. In dieser Blogserie werden wir seine Erfahrungen mit diesen Boards vertiefen und wie sie zu unverzichtbaren Werkzeugen in seinem Technikarsenal geworden sind.

Im ersten von drei Blogbeiträgen wird D. Rowland Sie anleiten, wie Sie Ihren eigenen Heimserver mit dem ZimaBoard 832 einrichten.

Lernen Sie D. Rowland kennen

Beginnen wir damit, D. Rowland ein wenig besser kennenzulernen. Er ist ein typischer Technikbegeisterter; er ist Ehemann, Vater von zwei Kindern und ein erfahrener IT-Fachmann mit einem reichen Hintergrund in Netzwerken und IT. Sein Weg in die Welt der Technologie begann in der High School und führte ihn schließlich zu einer Karriere in der IT, wo er mit Servern, Netzwerken und verschiedenen Technologien arbeitete. Seine Einsichten und Erfahrungen sind von unschätzbarem Wert, wenn wir erkunden, wie ZimaBoard in sein Leben passt.

Das Heimserver-Szenario: ZimaBoard 832

Einer der Hauptgründe, warum D. Rowland die 832-Einheit gekauft hat, ist das Self-Hosting der Dienste, die er häufig nutzt. Vor dem ZimaBoard verwendete D. Rowland einen 3U selbstgebauten „Server“, der aus alten PC-Teilen bestand, die er entweder herumliegen hatte oder die er aus dem E-Recycling bergen konnte. Auf dem Bild seines Heim-Racks unten sieht man noch den alten Server, der ausgeschaltet unten im Rack steht.

Das ZimaBoard 832 übernahm alle Aufgaben vom alten Server, abgesehen von etwas Dateispeicherung, die auf das Synology NAS (ebenfalls abgebildet) verschoben wurde. D. Rowlands ZimaBoard 832 wurde zu einem leistungsstarken Heimserver, und so hat er es eingerichtet:

Hardware-Umgebung:

  • ZimaBoard 832
  • 480GB SSD für das /home-Verzeichnis

Software-System:

  • Debian 11.5
  • Docker und Docker-Compose

So richten Sie Ihr ZimaBoard 832 als Heimserver ein

D.Rowlands Heimserver-Setup umfasste die folgenden Schritte:

  • OS-Installation: Da die ZimaBoard-Einheiten x86-Systeme sind, konnte D. Rowland der normalen Debian-Installationsanleitung folgen. Er hat die CasaOS-Partition gelöscht und ein sauberes Debian Bullseye auf dem ZimaBoard 832 eMMC installiert. Er nutzte das eMMC für die Root-/Partition.
  • Zusätzlicher Speicher: Für die Datenspeicherung verwendete er eine 480GB SSD für das /home-Verzeichnis. Diese Trennung von Betriebssystem und Daten sorgt für einen effizienten Betrieb.
  • Docker-Installation: Sobald das Betriebssystem lief, installierte D. Rowland Docker und Docker-Compose. Zum Zeitpunkt der Einrichtung waren Docker und Docker-Compose separate Komponenten; das aktuelle Debian Bookworm integriert Compose in Docker.
  • Datenmigration: Er kopierte seine Docker-Mount-Punkte und die docker-compose.yml von seinem vorherigen Server auf das ZimaBoard 832. Dieser Schritt stellte sicher, dass seine Daten und Konfigurationen nahtlos auf die neue Hardware übertragen wurden. Einige Dateipfade wurden in seiner docker-compose.yml und einem „Backup-to-S3“-Bash-Skript aktualisiert, um das neue Systemlayout widerzuspiegeln.
  • Docker-Konfiguration: Mit den aktualisierten Dateipfaden in seiner docker-compose.yml konnte D. Rowland „docker-compose up -d“ ausführen und alle seine Dienste funktionierten wieder einwandfrei.

Anwendungen und Anwendungsfälle

Zurzeit betreibt D.Rowland die folgenden Anwendungen und Dienste auf seinem ZimaBoard 832:

  • hkotel/mealie
  • linuxserver/calibre-web
  • gitea/gitea
  • matrixdotorg/synapse
  • vaultwarden/server
  • iarekylew00t/caddy-cloudflare
  • oznu/cloudflare-ddns
  • ugeek/webdav
  • itzg/minecraft-bedrock-server
  • mongo:4.4
  • pawelmalak/flame
  • drowland/phpfpm-alpine
  • drowland/fastapi
  • drowland/ipcalc
  • drowland/autolog

F: Diese Anwendungen dienen in verschiedenen Szenarien unterschiedlichen Zwecken. Unten teilt D. Rowland seine Erfahrungen.

D.Rowland möchte darauf hinweisen, dass sein 832 laut seinem neofetch-Screenshot bei normaler täglicher Nutzung nur 1,3 GB Speicher verwendet, während er alle oben genannten Docker-Container nutzt.

Python-ProjekteD.Rowland: Das Herz des ZimaBoard 832 Heimservers liegt in den verschiedenen Python-Projekten, die ich entwickelt habe und aktiv weiterentwickle. Diese Projekte reichen von praktischen Hilfsprogrammen bis zu experimentellen Vorhaben. Derzeit betreibe ich:

  • Autoblog : Autolog ist ein webbasiertes Automobil-Service-Log, das entwickelt wurde, um Wartungsaufzeichnungen für unsere Familienfahrzeuge zu verfolgen und zu verwalten. Es vereinfacht die Fahrzeugwartung und stellt sicher, dass wir geplante Services nicht verpassen.
  • ipcalc : Inspiriert von kjokjos Perl-IPCALC wollte ich meine eigene Python-Implementierung eines IP-Subnetzrechners erstellen. Es ist ein praktisches Werkzeug für netzwerkbezogene Aufgaben und Berechnungen.
  • fastapi : FastAPI ist ein modernes Python-Webframework, das ich erkunde. Es hat mir ermöglicht, eine Beispiel-REST-API zu erstellen, die mir wiederum geholfen hat, ein Lieferanten-Integrationsprojekt für die Arbeit zu entwickeln.

Benutzerdefinierte Container-Builds

D. Rowland: Einige Docker-Container funktionieren für die meisten Anwendungsfälle gut, aber manchmal brauchen sie ein wenig Feintuning.

  • PHP-FPM: Ich habe den Standard-PHP-FPM-Container angepasst, indem ich zusätzliche Pakete hinzugefügt habe, die in der normalen Bereitstellung nicht enthalten sind. Ich habe ihn mit mehreren Projekten verwendet, sodass die Pakete ständig erweitert werden, z. B.: imagick, mongodb, mysqli, sodium usw.

Datenbank und Speicher

D.Rowland:

  • MongoDB (v4.4): Aufgrund der CPU-Beschränkungen des ZimaBoard 832, das keine AVX-Unterstützung bietet, habe ich mich für MongoDB Version 4.4 für meine Projekte entschieden. Glücklicherweise ist diese Version gut für meine spezifischen Anwendungsfälle und Projekte geeignet.
  • WebDAV: Dieser WebDAV-Container spielt eine entscheidende Rolle in meinem Workflow. Ich nutze ihn, um Obsidian-Notizen über mehrere Geräte zu synchronisieren. Er sorgt für nahtlosen Zugriff auf meine Notizen, egal ob ich auf meinem Handy, privaten PC, Arbeits-PC, Tablet oder Laptop bin.

Reverse Proxy und Fernzugriff

D.Rowland:

  • Caddy Server: Um den Fernzugriff auf meine Dienste zu vereinfachen, wenn ich nicht zu Hause bin, setze ich Caddy Server als Reverse Proxy ein. Seine einfache Konfiguration und Zuverlässigkeit machen ihn zur idealen Wahl. Ich habe mich gegen den Entwickler-Container von Caddy Server entschieden, weil ich das integrierte Cloudflare-DNS-Plugin wollte.
  • Cloudflare DynDNS: Ich betreibe den Cloudflare DynDNS-Container, um meinen Heim-DNS-A-Eintrag mühelos zu verwalten und sicherzustellen, dass meine Dienste auch unterwegs erreichbar bleiben.

Andere Container

D.Rowland:

  • Mealie: Ich verwende Mealie als mein elektronisches Kochbuch. Wenn ich auf etwas stoße, das gut klingt, füge ich es schnell und einfach hinzu. Für mich macht die Möglichkeit, Bilder und zusätzliche Notizfelder hinzuzufügen, es besser als ein handgeschriebenes Kochbuch.
  • Gitea: Mein persönliches Git-Repository; ich nutze es für alle meine privaten Python- und Powershell-Projekte sowie als Spiegel für Arbeitsprojekte.
  • Flame: Dies ist ein wunderbares Dashboard, das ich als Startseite im Browser verwende. Es ist mit dem Docker-Socket verbunden, sodass ich beim Hinzufügen neuer Container diese mit minimalem Konfigurationsaufwand mit dem Dashboard verknüpfen kann.
  • Minecraft Bedrock: Ich betreibe den Bedrock-Server statt der Java-Edition einfach wegen der Speicherbeschränkungen. Ich nutze keine Mods, daher ist die Bedrock-Version ein sehr einfacher und ressourcenschonender Server.

Datensicherheit und Backup

D.Rowland:

  • Backup-Skript: Datensicherheit hat für mich oberste Priorität. Um meine Container-Mountpoints und kritischen Daten zu schützen, habe ich ein Bash-Skript entwickelt, das tar verwendet, um meine Docker-Dateien zu archivieren, und dann s3cmd, um das Archiv jede Nacht zu Wasabi hochzuladen.
  • Vaultwarden: Die Nutzung des Vaultwarden-Containers mit dem Bitwarden-Client/App ermöglicht es mir, alle meine Passwörter und 2FA-Tokens zu verwalten, während ich sicherstelle, dass alles unter meiner Kontrolle bleibt und nicht auf den Zielnetzwerken großer Unternehmen läuft.

Diese vielfältige Anwendungsbandbreite unterstreicht die Flexibilität und Leistungsfähigkeit des ZimaBoard 832 als Heimserver.

Fazit:

In diesem ersten Teil unserer ZimaBoard-Serie haben wir D. Rowlands beeindruckendes Home-Server-Setup mit dem ZimaBoard 832 erkundet. Seine Erfahrung zeigt, wie dieses kompakte SBC genutzt werden kann, um eine Vielzahl von Diensten zu hosten und dabei effizient zu bleiben. Bleib dran für den nächsten Teil, in dem wir weitere kreative Einsatzmöglichkeiten des ZimaBoards entdecken!

Tritt UNSERER COMMUNITY bei, um dich mit unseren Mitgliedern auszutauschen:

Discord:zimaboard.com/discord

Forum: https://icewhale.community

Hinterlassen Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht..

    1 out of ...
    Wagen 0

    Ihr Warenkorb ist derzeit leer.

    Einkaufen beginnen