Wo steckt was im Rack.

RackView hält fest, welches Gerät in welcher Höheneinheit sitzt, welcher Port an welchem hängt und welches Netzteil in welcher Steckdose steckt. Auf deinem eigenen Server, in einem einzigen Container.

Installieren Ansehen
Das Dashboard von RackView: links die Navigation, in der Mitte das Rack „Homelab“ mit zwölf Höheneinheiten und gezeichneten Gerätefronten, rechts die Geräteliste.
Dashboard mit Rack-Ansicht · Beispieldaten
Der Schrank

Jedes Gerät auf seiner Höheneinheit.

Höhe, Position und Einbauseite gehören zum Gerät. Zwei halbtiefe Geräte teilen sich eine Einheit – eins vorne, eins hinten. Verschoben wird mit der Maus, belegte Einheiten wehren sich.

Rack-Ansicht mit Umschalter zwischen Vorderseite und Rückseite: Patchpanel, Switch mit SFP+-Käfigen, Server mit Einschüben und USV, daneben die Liste der Geräte.

Vorne und hinten

Ein Umschalter zeigt die Rückseite – mit dem, was man dort wirklich sieht: Blenden, Anschlüsse, die Steckdosenleiste ganz hinten.

Auf einen Blick

Wie viele Einheiten belegt sind, was frei ist, welches Gerät gerade in Wartung steht. Ein Klick aufs Gerät öffnet seine Details.

Die Geräte

Mit Foto statt aus dem Gedächtnis.

Hersteller, Modell, Seriennummer, Status, IP und MAC – und ein Bild. In der Übersicht steht das Foto dort, wo sonst nur ein Symbol wäre.

Geräteübersicht als Tabelle mit Typ, Standort im Rack oder Raum, IP-Adresse, Ports, Garantie und Status.
Netzwerkplan: Geräte als Knoten, dazwischen die Port-Verbindungen, eingefärbt nach Geschwindigkeit.
Das Netz

Vom Port zum Plan.

Ports je Gerät mit PoE-Standard und Belegung, Verbindungen zwischen zwei Ports – und daraus entsteht der Netzwerkplan von selbst. Dazu alle IP-Adressen nach Netz sortiert, doppelte Vergaben markiert.

Die Anschlüsse

Jede Buchse, wie sie aussieht.

RJ45, SFP+, USB und Strom – gezeichnet wie am Gerät. Belegte Ports leuchten grün, PoE trägt einen orangen Strich. Ein Klick zeigt, was am anderen Ende hängt.

Port-Übersicht eines Switches mit 24 RJ45-Buchsen und zwei SFP+-Käfigen, daneben die Details zu Port 25: SFP+, 10G, verbunden mit dem Server Proxmox.
Steckplätze einer Steckdosenleiste als gezeichnete Schukodosen, daneben die Details zu Platz 3: angeschlossen ist der Server Proxmox.
Der Strom

Welches Netzteil in welcher Dose.

Steckdosenleiste oder USV anlegen, Anzahl der Plätze festlegen, je Platz ein Gerät eintragen. Was nicht im Rack steht, kommt als freier Text hinein. Ein Gerät hängt an genau einem Platz – steckt es schon woanders, fragt RackView nach.

Vor Ort

Ein Code am Gerät.

QR-Etiketten für A4-Bögen oder den Etikettendrucker, mit Vorschau in echten Millimetern. Der Code am Gerät öffnet dessen Seite direkt auf dem Telefon – im Serverraum die schnellste Antwort auf „was ist das hier eigentlich".

Etikettenseite mit Formatwahl, Auswahl der Geräte und einer Vorschau der QR-Etiketten in Millimetern.
Auch dunkel

Für die Abende im Keller.

Umschalter oben rechts, auf Wunsch folgt die Ansicht dem Betriebssystem. Die Wahl merkt sich jeder Browser für sich.

Dieselbe Ansicht in dunkel: dunkle Flächen, helle Schrift, das Rack bleibt dunkelgrau.
Und außerdem

Was sonst noch drinsteckt.

Getrennte Bereiche

Jedes Konto sieht nur die eigenen Racks. Die Selbstregistrierung lässt sich abschalten, das erste Konto wird Administrator.

Zwei Faktoren

Anmeldung mit Code aus der Authenticator-App, samt Wiederherstellungscodes für den Fall der Fälle.

Anmeldung über Authentik

Wer einen OIDC-Anbieter betreibt, meldet sich darüber an. Das Passwort bleibt als Rückweg bestehen.

Export und Import

Geräte und Verbindungen als CSV, der ganze Bestand als JSON, Racks als PDF. Der Import zeigt vorher, was passieren würde.

Nächtliche Sicherung

Der Container legt jede Nacht einen Datenbank-Dump in den Datenpfad und räumt alte weg.

Auch auf dem Telefon

Im Serverraum hat man selten einen Rechner dabei. Die Navigation steckt dort hinter einem Menü-Knopf.

Installation

Ein Container, ein Port, ein Datenpfad.

Im Image steckt alles: Oberfläche, Schnittstelle und die PostgreSQL-Datenbank. Es muss nichts weiter installiert werden.

Unraid

Aus dem App-Katalog – danach läuft alles über die Docker-Oberfläche. Bald verfügbar: RackView ist freigegeben und erscheint mit der nächsten Aktualisierung des Katalogs. Bis dahin über die Vorlage weiter unten.

  1. Apps öffnen und nach RackView suchen.
  2. Install – es öffnet sich das Edit-Fenster.
  3. Port und Datenpfad prüfen, dann Apply. Der erste Start dauert länger – die Datenbank wird angelegt.

Ohne App-Katalog: Vorlage holen (Konsole, oben rechts >_), dann Docker → Add ContainerUser templatesRackView.

wget -O /boot/config/plugins/dockerMan/templates-user/my-RackView.xml \
  https://raw.githubusercontent.com/alexanderschubert/rackview/main/templates/rackview.xml
Der Datenpfad darf nicht auf den Ordner mit dem Quelltext zeigen. Liegt appdata nicht auf dem Cache, wird die Datenbank spürbar langsam.

Docker

Ein Aufruf genügt. Alles Dauerhafte landet im Datenpfad.

docker run -d --name rackview \
  --restart unless-stopped \
  -p 8080:80 \
  -v /pfad/zu/rackview:/config \
  -e TZ=Europe/Berlin \
  ghcr.io/alexanderschubert/rackview:latest

Selbst bauen statt ziehen:

git clone https://github.com/alexanderschubert/rackview.git
cd rackview
NUR_BAUEN=1 bash docker/app/bauen.sh
Danach http://<server>:8080 aufrufen und ein Konto anlegen – das erste wird Administrator.
Einstellungen

Alles optional.

Ohne Angabe gilt der Standard rechts.

VariableBedeutungStandard
TZZeitzone für Protokolle und die nächtliche SicherungUTC
RACKVIEW_REGISTRATIONOb sich auf der Anmeldeseite jeder ein Konto anlegen darftrue
BACKUP_SCHEDULECron-Ausdruck der Sicherung nach /config/backups. Die Unraid-Vorlage trägt ihn vorbelegt ein; ohne Angabe wird nicht gesichert.0 3 * * *
RETENTION_DAYSWie lange Sicherungen liegen bleiben14
OIDC_ENABLEDAnmeldung über einen Anbieter wie Authentik, neben dem Passwortfalse
DB_HOSTGesetzt = eigene PostgreSQL-Datenbank statt der eingebautenleer
Technik

Worauf es läuft.

Laravel 13Schnittstelle in PHP 8.4
Vue 3Oberfläche, gebaut mit Vite
PostgreSQL 17im Container oder getrennt
1 ContainerNginx, PHP-FPM, Datenbank, Cron