Ghost - modernes Blog- und Publishing-System

Ghost - modernes Blog- und Publishing-System

Ghost ist eine fokussierte Publishing-Plattform für Blogs und Newsletter, die mit einem sauberen Editor und nativer Membership-Funktion aus der Masse der CMS heraussticht.

Was ist Ghost?

Ghost wurde als schnelle, moderne Alternative zu WordPress entwickelt und legt den Fokus auf das Schreiben und Veröffentlichen. Der auf Markdown basierende Editor ist ablenkungsfrei, die Admin-Oberfläche minimal und performant. Besonders interessant: Ghost unterstützt native Mitgliederverwaltung und Newsletter-Versand, wodurch sich eine vollständige Creator-Plattform ohne Drittanbieter aufbauen lässt. Das Docker-Image bringt alles nötige mit — Node.js, Ghost-Core und einen eingebauten SQLite-Speicher für den schnellen Einstieg.

Voraussetzungen

  • Docker 20.10+ / Docker Compose
  • Optional: MySQL/MariaDB für produktive Umgebungen statt SQLite
  • Reverse Proxy mit TLS für den Betrieb unter eigener Domain

Compose-Beispiel

services:
  ghost:
    image: ghost:latest
    container_name: ghost
    restart: unless-stopped
    ports:
      - "2368:2368"
    volumes:
      - ./content:/var/lib/ghost/content
    environment:
      - url=https://blog.meinedomain.de
      - database__client=mysql
      - database__connection__host=ghost-db
      - database__connection__user=ghost
      - database__connection__password=sicheres_passwort
      - database__connection__database=ghost
    depends_on:
      - ghost-db

  ghost-db:
    image: mysql:8.0
    container_name: ghost-db
    restart: unless-stopped
    volumes:
      - ./db:/var/lib/mysql
    environment:
      - MYSQL_DATABASE=ghost
      - MYSQL_USER=ghost
      - MYSQL_PASSWORD=sicheres_passwort
      - MYSQL_ROOT_PASSWORD=root_passwort

Hinweise

  • URL korrekt setzen: Die url-Variable muss exakt der öffentlichen Adresse entsprechen (inklusive https://), da Ghost sie für alle internen Links verwendet — falsche Einträge brechen die Navigation.
  • Content-Verzeichnis: Themes, Bilder und Uploads landen im content-Volume; ohne dieses Mapping gehen alle Inhalte beim Container-Update verloren.
  • Theme-Anpassung: Eigene Themes als Ordner in ./content/themes/ ablegen und in der Ghost-Admin aktivieren.
  • Mail-Konfiguration: Für Newsletter und Mitglieder-E-Mails einen SMTP-Dienst (z. B. Mailgun, Postmark) über die mail__*-Umgebungsvariablen konfigurieren.