Listing 3
$ sudo mkdir -p /var/www/ghost $ sudo chown pi:pi /var/www/ghost $ cd /var/www/ghost $ ghost install --db=sqlite3

Abbildung 3: Der Installationsassistent lädt alles Nötige aus dem Netz und kümmert sich später auch um Updates des Blog-Systems.
Updates
Das Ghost-CLI übernimmt neben der Installation die meisten Wartungsarbeiten. Mit ghost update spielen Sie etwa die aktuelle Version ein. Alternativ werfen Sie über ghost log einen Blick auf das Geschehen hinter den Kulissen. Informationen zu sämtlichen Optionen des Ghost-Clients für die Kommandozeile erhalten Sie in der Hilfe unter ghost help. Sämtliche Kommandos müssen Sie im Ordner der Ghost-Installation ausführen.
Auf zum Bloggen
Anschließend übernimmt das Skript die Konfiguration des Nginx-Webservers. Bei Bedarf verschlüsseln Sie die Verbindung über ein mittels Let’s Encrypt erzeugtes SSL-Zertifikat. In diesem Fall müssen Sie neben Port 80 auch Port 443 auf den Home-Server weiterleiten. Zum Ende hin lassen Sie Systemd Ghost steuern und danach den Dienst starten. Passt alles, erreichen Sie das Blog im Browser unter http://URL, bei aktivem SSL leitet das System automatisch weiter nach https://URL.
Das Frontend zur Administration laden Sie über http://URL/ghost. Beim ersten Aufruf der Seite legen Sie einen Benutzer an, geben dem Blog einen Namen und laden gegebenenfalls weitere Nutzer ein, sich einen Account im Blog anzulegen. Danach öffnen Sie aus der Seitenleiste die General-Einstellungen und setzen unter Site timezone die lokale Zeit (Abbildung 4). Weitere Möglichkeiten, das Blog auf Deutsch umzustellen, bietet Ghost derzeit nicht.

Abbildung 4: Nach der Installation enthält das Ghost-Blog bereits eine Reihe von Beiträgen, die dessen Funktionen demonstrieren.
Der vorinstallierte Inhalt demonstriert Ihnen die Funktionen des Blogs. Wie WordPress unterscheidet auch Ghost zwischen Posts und Pages. Mit Posts aktualisieren Sie fortlaufend den Inhalt des Blogs. Pages dienen für statische Inhalte wie zum Beispiel das Impressum. Über die Seitenleiste im Editor schalten Sie zwischen den Beitragstypen um. Bei Bedarf löschen Sie über Labs | Delete all content sämtliche Inhalte. Das System verschickt E-Mails (etwa beim Zurücksetzen von Passwörtern) über Nodemailer [8]; die Funktion prüfen Sie im Zweifelsfall über Test email configuration.
Funktionen
Beim Verfassen eines Artikels verzichtet Ghost ganz bewusst auf WYSIWYG und nutzt stattdessen einen einfachen Markdown-Editor [9]. Die Syntax dieser simplen Auszeichnungssprache geht schnell ins Blut über: So formatieren Sie beispielsweise mit Sternchen den Text *kursiv*, oder . Listen, Links oder Code-Blöcke lassen sich ebenso leicht erstellen. Buttons an der Unterkante und eine Seite-an-Seite-Vorschau helfen bei den ersten Schritten (Abbildung 5).

Abbildung 5: Der Editor in Ghost verzichtet auf eine WYSIWYG-Darstellung und nutzt stattdessen die Markdown-Syntax.
Weitere Unterstützung beim Schreiben von Artikeln erhalten Sie über den Desktop-Client [10] sowie eine Smartphone-App für Android [11]. Während die Desktop-Variante als Electron-Programm nur die Webseite in ein Anwendungsfenster packt, besitzt die Android-App einen klaren Mehrwert (Abbildung 6): Mit dem Programm betrachten Sie nicht nur komfortabel das Blog, sondern können auch neue Artikel erstellen oder alte bearbeiten. Dank der einfachen Markdown-Syntax funktioniert das selbst auf einem Smartphone sehr gut.

Abbildung 6: Mit der Android-App lassen sich die Beiträge im Ghost-Blog nicht nur betrachten, sondern auch sehr komfortabel bearbeiten.
Gefällt Ihnen das Aussehen des Blogs nicht, finden Sie im Ghost Marketplace [12] kostenlose (Stand bei Redaktionsschluss: nur eines) sowie kostenpflichtige Themes. Seiten wie Ghost for Beginners [13] listen weitere Skins auf. Die Themes spielen Sie über Design | Upload a theme in Form einer ZIP-Datei in das Blog ein. In Zukunft soll sich das Blog-System auch mit Plugins (bei Ghost Apps genannt) erweitern lassen [13].
Fazit
In der Summe bietet Ghost vieles, was sich auch beim CMS-Mainstream findet. Noch fehlen dem Newcomer allerdings eine Art Dashboard, das Informationen über Zugriffe und Seitenaufrufe liefert, wie auch andere essenzielle Blog-Funktionen – etwa eine Möglichkeit, um Kommentare zu hinterlassen. Bei Bedarf lassen sich diese Funktionen jedoch extern nachrüsten, beispielsweise über Google Analytics und Disqus beziehungsweise, wenn man Open-Source-Tools bevorzugt, mit Piwik [15] und Isso [16].
Glossar
- Reverse Proxy
-
Node.js lauscht im Gegensatz zu einem klassischen Webserver nicht auf Port 80 auf Anfragen, sondern auf einem Port jenseits der 1024, sodass der Dienst unter anderem nicht mit Root-Rechten laufen muss. Als Reverse Proxy nimmt Nginx Anfragen auf Port 80 und 443 (für SSL) entgegen und vermittelt diese weiter an Ghost.
Infos
- “Usage of content management systems for websites”: https://w3techs.com/technologies/overview/content_management/all
- Ghost: https://ghost.org/de
- Project Ghost: https://john.onolan.org/project-ghost
- Kickstarter zu Ghost: https://www.kickstarter.com/projects/johnonolan/ghost-just-a-blogging-platform?lang=de
- Ghost(Pro): https://ghost.org/de/pricing
- Node.js: https://nodejs.org
- Installationsanleitung: https://docs.ghost.org/v1.0.0/docs/install
- Nodemailer: https://github.com/nodemailer/nodemailer/tree/0.7
- Markdown: https://de.wikipedia.org/wiki/Markdown
- Desktop-Client: https://ghost.org/de/downloads/
- Android-Client: https://play.google.com/store/apps/details?id=org.ghost.android
- Marketplace: https://marketplace.ghost.org
- Ghost for Beginners: https://www.ghostforbeginners.com/themes
- Apps: https://apps.ghost.org
- Piwik: https://piwik.org
- Isso: https://posativ.org/isso





