NocoDB mit Docker Compose: Eigene No-Code-Datenbank lokal auf Port 8080 starten
Wenn sich fuer diese Nacht kein starkes, sauber belegtes News-Thema ueber die juengsten Artikel legen laesst, sollte der Ersatz nicht beliebig sein. NocoDB ist hier ein brauchbarer Fallback, weil das Ergebnis sofort sichtbar wird: eine tabellenartige Weboberflaeche im Browser, lokal auf dem eigenen Docker-Host.
Stand: 15. Mai 2026, 00:00 Uhr CEST. Die aktuelle Quellenlage ist klar genug fuer ein reproduzierbares Setup. Die offizielle Self-Hosting-Doku fuehrt den Compose-Weg ueber nocodb/docker-compose/2_pg, die Referenzdatei koppelt NocoDB an PostgreSQL, GitHub markiert 2026.05.0 seit dem 8. Mai 2026 als neueste Release, und Docker Hub fuehrt dazu passend den Tag nocodb/nocodb:2026.05.0. Genau darauf pinne ich dieses Tutorial bewusst, statt latest unkontrolliert mitzuziehen.

Was du am Ende hast
- NocoDB lokal unter
http://127.0.0.1:8080 - Einen kleinen Compose-Stack mit NocoDB und PostgreSQL
- Zwei persistente Ordner fuer App-Daten und Datenbank
- Klare Pruefschritte mit
docker compose, Logs undcurl
Voraussetzungen
- Docker Engine und
docker composesind installiert - Port
8080ist auf dem Host frei - Du arbeitest in einem neuen Projektordner statt in einem alten Compose-Verzeichnis
Die NocoDB-Doku schreibt an einigen Stellen noch docker-compose. Ich nutze hier das aktuelle Compose-Plugin mit docker compose, weil das auf heutigen Docker-Installationen die saubere Standardform ist.
1. Arbeitsordner anlegen
Sauber anfangen, nicht in irgendeinem bestehenden Stack herumkonfigurieren:
mkdir nocodb-local && cd nocodb-local
mkdir nc-data db-data
Damit liegen App-Daten und PostgreSQL-Daten spaeter sichtbar im Projektordner und nicht in einem schwerer auffindbaren Standardpfad.
2. Passwort fuer PostgreSQL festlegen
NocoDB verbindet sich im offiziellen Compose-Beispiel ueber die Umgebungsvariable NC_DB mit PostgreSQL. Das Passwort muss deshalb an zwei Stellen identisch sein: bei POSTGRES_PASSWORD und im Verbindungsstring.
Ein brauchbarer Startwert laesst sich lokal so erzeugen:
openssl rand -base64 24
Kopiere den erzeugten Wert gleich in die Compose-Datei an die beiden markierten Stellen.
3. Compose-Datei erstellen
Lege jetzt die Datei nocodb-local/compose.yaml an:
services:
root_db:
image: postgres:16.6
container_name: nocodb-postgres
restart: unless-stopped
environment:
POSTGRES_DB: root_db
POSTGRES_USER: postgres
POSTGRES_PASSWORD: change-this-postgres-password
healthcheck:
test: ["CMD-SHELL", "pg_isready -U \"$${POSTGRES_USER}\" -d \"$${POSTGRES_DB}\""]
interval: 10s
timeout: 2s
retries: 10
volumes:
- ./db-data:/var/lib/postgresql/data
nocodb:
image: nocodb/nocodb:2026.05.0
container_name: nocodb
restart: unless-stopped
depends_on:
root_db:
condition: service_healthy
environment:
NC_DB: "pg://root_db:5432?u=postgres&p=change-this-postgres-password&d=root_db"
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./nc-data:/usr/app/data
Warum genau diese Werte?
nocodb/nocodb:2026.05.0pinnt auf die aktuell verifizierte Release statt auf ein beweglicheslatestpostgres:16.6uebernimmt den Datenbankstand aus der offiziellen Compose-Referenz127.0.0.1:8080:8080haelt den Dienst lokal, bis du ihn bewusst ueber Reverse Proxy oder Heimnetz freigibst./nc-dataund./db-datasorgen dafuer, dass App-Zustand und Datenbank Neustarts ueberleben
4. Stack starten
Jetzt Images ziehen und den Stack im Hintergrund hochfahren:
docker compose pull
docker compose up -d
Beim ersten Lauf braucht PostgreSQL ein paar Sekunden, bis der Healthcheck gruen wird und NocoDB startet.
5. Funktion pruefen
Bevor du im Browser klickst, pruefst du einmal sauber den Zustand:
docker compose ps
docker compose logs --tail=100 root_db
docker compose logs --tail=100 nocodb
curl -I http://127.0.0.1:8080
Wenn alles passt, siehst du zwei laufende Dienste und bei curl eine erfolgreiche HTTP-Antwort oder einen Redirect. Genau das ist hier der sinnvolle Verifikationspunkt: Der Stack laeuft nicht nur als Containerliste, sondern antwortet bereits im Browserpfad.
6. Erster Start im Browser
Oeffne jetzt:
http://127.0.0.1:8080
Damit landest du direkt in der Weboberflaeche. Das sichtbare Ergebnis ist nicht bloss ein Admin-Login ohne Nutzwert, sondern eine echte Arbeitsoberflaeche fuer Tabellen, Felder und spaetere Datenquellen.
Fuer einen ersten Funktionstest reichen drei kurze Schritte:
- Workspace oder Projekt anlegen.
- Eine erste Tabelle erstellen.
- Zwei bis drei Felder wie
Name,StatusundFaelligkeithinzufuegen.
Danach ist die Kernidee von NocoDB sofort greifbar: du arbeitest im Browser mit einer no-code-orientierten Tabellenoberflaeche, aber in der eigenen Infrastruktur.
7. Warum NocoDB als Compose-Fallback taugt
Viele Docker-Tutorials enden bei "Container laeuft". NocoDB ist staerker, weil der praktische Nutzen unmittelbar sichtbar wird:
- du bekommst eine nutzbare Oberflaeche statt nur ein Technikgeruest
- PostgreSQL liegt bereits im Stack und nicht in einer spaeteren To-do-Liste
- die lokale Bindung auf
127.0.0.1verhindert unnoetig offene Ports - du kannst spaeter immer noch Reverse Proxy, Domain oder externe Datenquellen ergaenzen
Gerade fuer kleine interne Tools, Redaktionslisten, Inventar, CRM-Skizzen oder Projekttracking ist das deutlich brauchbarer als noch ein abstrakter Compose-Grundlagenpost.
8. Wichtiger Lizenzhinweis
Die offizielle Self-Hosting-Doku weist darauf hin, dass NocoDB fuer interne Self-Hosting-Nutzung gedacht ist, waehrend das Anbieten als gehosteter Dienst fuer Dritte oder die Einbettung in ein kommerzielles SaaS-Angebot gesonderte Lizenzfragen ausloesen kann. Fuer private oder interne Nutzung ist das hier unkritisch, fuer Weiterverkauf oder Reselling solltest du die Lizenzbedingungen vorher sauber lesen.
9. Sinnvolle Alltagsbefehle
Fuer Logs, Updates und Stoppen brauchst du am Anfang nur diese Kommandos:
docker compose logs -f nocodb
docker compose logs -f root_db
docker compose pull
docker compose up -d
docker compose down
Die Daten bleiben dabei in ./nc-data und ./db-data erhalten.
Fazit
Wenn aktuelle News in dieser Nacht nicht sauber genug tragen, sollte der Ersatz wenigstens ein echtes Ergebnis liefern. Genau das schafft NocoDB: ein kleiner Compose-Stack, klare Datenhaltung, gepinnte Version und eine sichtbare Tabellenoberflaeche im Browser nach wenigen Minuten.
Fuer einen Docker-Compose-Fallback am 15. Mai 2026 ist das deutlich brauchbarer als der naechste generische Container-Text ohne konkrete Anwendung.