Directus selbst hosten – der einfache Weg

Directus selbst hosten – der einfache Weg

Yulei Chen - Content-Engineerin bei sliplane.ioYulei Chen
5 min

Directus ist ein Open-Source-Headless-CMS, das jede SQL-Datenbank mit einer dynamischen REST- und GraphQL-API versieht. Du bekommst ein schickes Admin-Panel, um Content, User und Berechtigungen zu verwalten — ohne eine Zeile Code. Directus Cloud startet bei $99/Monat, und der Free-Tier ist auf einen einzigen User begrenzt. Wenn du mehr Flexibilität willst, ohne dafür viel zu zahlen, ist Self-Hosting der richtige Weg.

Sliplane ist eine Managed-Container-Plattform, die Self-Hosting schmerzlos macht. Du kannst Directus in wenigen Minuten per One-Click-Deploy starten — kein SSH, keine Reverse-Proxy-Config, keine Infrastruktur zum Verwalten.

Wenn du lieber den manuellen Weg gehst, schau dir Directus mit Docker auf einem Ubuntu-Server selbst hosten an — dort wird das komplette Docker- plus Caddy-Setup Schritt für Schritt erklärt.

Voraussetzungen

Vor dem Deploy brauchst du einen Sliplane-Account (kostenlose Trial verfügbar).

Quick Start

Sliplane bietet One-Click-Deployments mit Presets.

SliplaneDeploy Directus >
  1. Klick auf den Deploy-Button oben
  2. Wähl ein Projekt
  3. Wähl einen Server. Wenn du gerade neu registriert bist, bekommst du einen 48-Stunden-Trial-Server
  4. Klick auf Deploy!

Das war's! Sobald der Service healthy ist, öffne die Domain, die Sliplane dir gibt (z. B. directus-xxxx.sliplane.app), und log dich mit ADMIN_EMAIL und ADMIN_PASSWORD aus den Environment-Variablen deines Services ein.

Über das Preset

Das Directus-Preset deployt einen einzelnen Service mit allem, was du brauchst:

  • Directus 11.17.2 — die Haupt-App mit REST- und GraphQL-APIs plus Admin-Panel
  • SQLite-Datenbank — eingebettete Datenbank, speichert Daten in einer Datei auf dem Volume, kein separater DB-Service nötig
  • WebSockets aktiv — Echtzeit-Updates out of the box
  • Persistente Volumes — Datenbank, Uploads, Extensions und Templates überleben Redeployments

Die Environment-Variablen KEY und SECRET werden zum Signieren von Tokens und zum Verschlüsseln von Daten genutzt. Das Preset generiert dafür automatisch starke Zufallswerte.

Nächste Schritte

Wenn Directus auf Sliplane läuft, nutz die Domain, die Sliplane dir gibt (z. B. directus-xxxx.sliplane.app). Von dort aus kannst du dich einloggen, Environment-Variablen anpassen und das Logging auf dein Projekt zuschneiden.

Standard-Credentials

Log dich unter https://deine-directus-domain.sliplane.app/admin mit der E-Mail und dem Passwort ein, die du in ADMIN_EMAIL und ADMIN_PASSWORD konfiguriert hast.

Wichtige Environment-Variablen

Directus ist über Environment-Variablen hochgradig konfigurierbar. Hier ein paar, die du anpassen könntest:

VariableBeschreibungDefault
PUBLIC_URLDie öffentliche URL deiner InstanzAuto-detected
CACHE_ENABLEDResponse-Caching aktivierenfalse
CACHE_AUTO_PURGECache bei Content-Änderungen automatisch leerenfalse
CACHE_STORECache-Backend (memory, redis)memory
RATE_LIMITER_ENABLEDRate Limiting aktivierenfalse
MAX_PAYLOAD_SIZEMaximale Upload-Größe1mb
FILES_MAX_UPLOAD_SIZEMaximale Datei-Upload-GrößeUnlimited

Die komplette Liste findest du in der Directus-Config-Doku.

Logging

Standardmäßig loggt Directus nach STDOUT, was perfekt mit Sliplanes eingebautem Log-Viewer funktioniert. Du kannst das Log-Level über die LOG_LEVEL-Environment-Variable steuern:

WertBeschreibung
traceAm ausführlichsten
debugDebug-Infos
infoStandard-Level
warnNur Warnungen
errorNur Fehler
fatalNur kritische Fehler

Allgemeine Docker-Logging-Tipps findest du in unserem Post Wie du docker logs verwendest.

Troubleshooting

Wenn Directus nicht startet, prüf die Logs in Sliplanes Log-Viewer. Häufige Probleme:

  • Admin-Login lädt nicht — wart kurz nach dem ersten Deploy, Directus muss die SQLite-Datenbank initialisieren und den Admin-User anlegen
  • Berechtigungsfehler bei Volumes — Directus läuft als Non-Root-User im Container; achte drauf, dass die Volumes korrekt gemountet sind
  • Fehlende Environment-Variablen — stell sicher, dass KEY, SECRET, ADMIN_EMAIL und ADMIN_PASSWORD gesetzt sind

Kostenvergleich

ProvidervCPU CoresRAMDiskGeschätzte monatliche KostenHinweise
Sliplane22 GB40 GB€9Abrechnung pro Server
Directus Cloud$99+Managed, startet bei 1 User
Render12 GB40 GB~$35–$45VM Small
Fly.io22 GB40 GB~$20–$25VM + Volumes
Railway22 GB40 GB~$15–$66Nutzungsbasiert

FAQ

Hier die Antworten auf Fragen, die beim Self-Hosting von Directus auf Sliplane oft auftauchen.

Was kann ich mit Directus bauen?

Directus funktioniert als Backend für Websites, Mobile Apps, IoT-Dashboards, interne Tools — alles, was strukturierten Content braucht. Es macht aus deiner Datenbank eine vollständige API mit Admin-Panel, damit du Content verwalten kannst, ohne Backend-Code zu schreiben. Du kannst es auch als klassisches Headless CMS für Blogs, Landingpages oder E-Commerce nutzen.

Wie aktiviere ich Caching?

Füg diese Environment-Variablen zu deinem Directus-Service auf Sliplane hinzu:

CACHE_ENABLED=true
CACHE_AUTO_PURGE=true

Damit ist In-Memory-Response-Caching aktiv — das kann Read-heavy Workloads deutlich beschleunigen. Für größere Setups kannst du einen separaten Redis-Service deployen und CACHE_STORE=redis mit einer REDIS-Connection-String setzen.

Wie aktualisiere ich Directus?

Änder den Image-Tag in deinen Directus-Service-Settings auf Sliplane (z. B. von directus/directus:11.17.2 auf eine neuere Version) und redeploy. Prüf Docker Hub für die neueste stabile Version. Lies immer die Release Notes vor einem Upgrade, da Major-Versionen Breaking Changes oder nötige Datenbank-Migrationen enthalten können.

Wie schneidet Directus im Vergleich zu anderen Headless CMS ab?

Payload CMS ist eine Code-First-Alternative, wenn du TypeScript-basierte Schema-Definitionen bevorzugst. Ghost ist super, wenn du speziell eine Publishing-Plattform brauchst. Directus sticht heraus, weil es mit jeder bestehenden SQL-Datenbank funktioniert und du keine Schemas im Code definieren musst — alles wird über die Admin-UI verwaltet.

Kann ich Directus mit einer bestehenden Datenbank nutzen?

Ja! Das ist eins der stärksten Features von Directus. Es kann eine bestehende PostgreSQL-, MySQL-, SQLite-, MS SQL- oder Oracle-Datenbank inspizieren und automatisch APIs und ein Admin-Panel dafür generieren. Zeig einfach mit den DB_*-Environment-Variablen auf deine bestehende Datenbank.

Host Directus jetzt selbst – so einfach!

Sliplane gibt dir alles, was du brauchst, um Directus ohne Server-Stress zu betreiben.