Zum Inhalt

NocoDB als eigene Online-Tabelle per Docker einrichten

Veröffentlicht am 12. August 2026 · Geschätzte Lesezeit: 5 Minuten

NocoDB stellt Datenbanken wie eine übersichtliche Online-Tabelle dar. Damit kannst du etwa Geräte, Wartungen, Ersatzteile oder Projekte im Browser verwalten, ohne die Daten einem Cloud-Dienst zu überlassen. Der offizielle Schnellstart richtet NocoDB, PostgreSQL, Redis und einen Hintergrunddienst automatisch ein; plane etwa 20 bis 30 Minuten ein.

Voraussetzungen

  • Ein Linux-, Windows- oder macOS-Rechner mit Docker und Docker Compose
  • Mindestens 2 GB freier Arbeitsspeicher
  • Port 8080 im Heimnetz frei
  • Ein Benutzerkonto mit Berechtigung zum Ausführen von Docker

1. Installationsskript herunterladen

Führe diese Befehle auf dem Docker-Server aus. Sie laden das offizielle Skript zunächst als Datei herunter, damit du es vor dem Start ansehen kannst.

mkdir -p ~/docker/nocodb-installer && cd ~/docker/nocodb-installer
curl -fsSL https://install.nocodb.com/noco.sh -o noco.sh

Prüfe, ob die Datei lesbar ist. Mit q beendest du die Ansicht.

less noco.sh

Skripte vor dem Start prüfen

Ein Installationsskript kann Befehle mit deinen Benutzerrechten ausführen. Lade es nur von der offiziellen HTTPS-Adresse und starte es erst nach der Prüfung. Die offizielle Ein-Zeilen-Variante ist kürzer, lässt aber keine Kontrolle vor der Ausführung zu.

2. Schnellstart ausführen

Dieser Befehl startet das heruntergeladene Skript im Quickstart-Modus. Es erzeugt einen Ordner nocodb, eine Compose-Konfiguration und dauerhafte Docker-Volumes.

bash noco.sh --quick

Der erste Start kann einige Minuten dauern, weil Docker mehrere Images lädt. Wechsel danach in den erzeugten Projektordner.

cd nocodb

3. Container prüfen

Zeige alle Dienste des Stacks an.

docker compose ps

NocoDB, Worker, PostgreSQL und Redis sollen laufen. Falls ein Dienst nicht startet, prüfe zuerst das NocoDB-Protokoll.

docker compose logs --tail=100 nocodb

Für Datenbankfehler prüfst du zusätzlich PostgreSQL.

docker compose logs --tail=100 db

4. Erstes Administratorkonto erstellen

Öffne im Browser http://<server-ip>:8080. Ersetze <server-ip> durch die feste IP-Adresse des Docker-Servers, zum Beispiel 192.168.178.20.

Registriere dich mit einer erreichbaren E-Mail-Adresse und einem langen, einzigartigen Passwort. Der erste Benutzer wird Super-Administrator und kann weitere Benutzer verwalten.

Nicht ungeschützt ins Internet stellen

Der Quickstart stellt NocoDB per HTTP auf Port 8080 bereit und ist für das Heimnetz gedacht. Richte keine direkte Router-Portfreigabe ein. Für öffentlichen Zugriff brauchst du HTTPS, einen Reverse-Proxy und eine sorgfältig konfigurierte Anmeldung; einfacher und sicherer ist ein VPN.

5. Erste Base anlegen

Klicke in NocoDB auf Create Base und wähle eine leere Base. Als Beispiel eignet sich Smart-Home-Inventar.

Lege in der ersten Tabelle diese Felder an:

  • Gerät als einzeiliger Text
  • Raum als Einzelauswahl
  • IP-Adresse als einzeiliger Text
  • Installiert am als Datum
  • Wartung nötig als Kontrollkästchen
  • Notizen als langer Text

Trage einen Testdatensatz ein. Damit lässt sich sofort prüfen, ob Änderungen dauerhaft gespeichert werden.

6. Port bei Bedarf ändern

Wenn Port 8080 bereits belegt ist, öffne die erzeugte Compose-Datei im Ordner nocodb und ändere nur die linke Zahl der Port-Zuordnung, beispielsweise auf 8081.

ports:
  - "8081:8080"

Starte den Stack nach der Änderung neu.

docker compose up -d

Die Oberfläche erreichst du danach unter http://<server-ip>:8081.

7. Datenbank sichern

Der offizielle Quickstart speichert Tabellen und Metadaten in PostgreSQL. Erstelle im Projektordner einen SQL-Dump. Der Dateiname enthält automatisch das aktuelle Datum.

docker compose exec -T db pg_dump -U nocodb nocodb > nocodb-$(date +%Y%m%d).sql

Prüfe, ob die Sicherungsdatei vorhanden und nicht leer ist.

ls -lh nocodb-*.sql

8. Anhänge und Konfiguration sichern

Dateianhänge liegen im Docker-Volume nocodb_data. Der tatsächliche Volume-Name trägt meist den Projektordner als Präfix. Ermittle ihn zuerst.

docker volume ls | grep _nocodb_data

Ersetze im nächsten Befehl <nocodb-volume> durch den angezeigten vollständigen Namen, zum Beispiel nocodb_nocodb_data.

docker run --rm -v <nocodb-volume>:/data:ro -v "$PWD":/backup alpine tar -czf /backup/nocodb-anhaenge-$(date +%Y%m%d).tar.gz -C /data .

Sichere außerdem die erzeugten Konfigurationsdateien. Je nach aktuellem Installer heißen sie unter anderem docker-compose.yml, docker.env und nocodb/db.json.

tar -czf nocodb-konfiguration-$(date +%Y%m%d).tar.gz docker-compose.yml docker.env nocodb/db.json

Backup außerhalb des Servers aufbewahren

Ein Docker-Volume auf demselben Datenträger ist kein Backup. Kopiere SQL-Dump, Anhangsarchiv und Konfigurationsarchiv auf ein NAS oder einen verschlüsselten externen Datenträger. docker.env und db.json können Zugangsdaten enthalten und dürfen nicht öffentlich gespeichert werden.

9. Wiederherstellung testen

Auf einem neu aufgebauten Stack kannst du einen SQL-Dump mit folgendem Befehl einspielen. Ersetze <backup-datei.sql> durch den tatsächlichen Dateinamen.

cat <backup-datei.sql> | docker compose exec -T db psql -U nocodb nocodb

Eine Wiederherstellung überschreibt beziehungsweise ergänzt Daten. Teste sie möglichst auf einem getrennten Testsystem und sichere den aktuellen Stand vorher.

10. Aktualisieren

Erstelle vor jedem Update die Sicherungen aus den vorherigen Schritten. Ziehe danach die aktuellen Images und starte den Stack neu.

docker compose pull
docker compose up -d

Prüfe anschließend Status und Protokoll.

docker compose ps

11. Stoppen und Rückweg

Dieser Befehl stoppt und entfernt die Container, lässt die benannten Volumes mit deinen Daten aber bestehen.

docker compose down

Später startest du denselben Stand erneut.

docker compose up -d

Volumes nicht versehentlich löschen

Verwende docker compose down -v nur, wenn Datenbank, Benutzer und Anhänge endgültig gelöscht werden dürfen und ein geprüftes Backup existiert.

12. Typische Fehler

  • Port 8080 ist belegt: Ändere den Host-Port wie in Schritt 6 oder stoppe den anderen Dienst.
  • NocoDB startet, Datenbank aber nicht: Prüfe docker compose logs db und freien Festplattenspeicher.
  • Nach Neustart fehlen Daten: Starte aus dem ursprünglichen Projektordner; ein anderer Ordner erzeugt durch den Projektnamen möglicherweise neue Volumes.
  • Anmeldung funktioniert nicht: Prüfe Browseradresse, Groß- und Kleinschreibung und setze das Passwort nur über die dafür vorgesehene Oberfläche zurück.
  • Anhänge fehlen im Backup: SQL-Dump und Anhangsvolume sind getrennt und müssen beide gesichert werden.

13. Quellen und Videos

Fertig

NocoDB läuft nun im Heimnetz, das erste Administratorkonto und eine Test-Base sind angelegt. Stoppe und starte den Stack einmal neu und prüfe, ob der Testdatensatz weiterhin vorhanden ist; damit sind Container und dauerhafte Datenspeicherung erfolgreich eingerichtet.