So installieren Sie Ghost auf Ubuntu Server

Möchten Sie eine Blog-Plattform auf Ihrem Linux-Server aufsetzen, die unkomplizierter und ressourcenschonender als WordPress ist? Dann könnte Ghost die richtige Wahl sein. Ghost ist eine extrem schnelle, Open-Source-basierte Blogging-Software, die besonderes Augenmerk auf Einfachheit und Benutzerfreundlichkeit legt. Sie können Ghost auf nahezu jeder Linux-Distribution installieren, wobei wir uns in dieser Anleitung auf Ubuntu-Server konzentrieren. Die einzigen Vorbedingungen sind ein LEMP-Stack (Linux, Nginx, MySQL und PHP) sowie der Node.JS-Paketmanager, der für das Ghost-CLI-Installationstool benötigt wird.

Einen Benutzer für Ghost erstellen

Es ist nicht ratsam, Ghost mit dem Root-Benutzer zu verwalten. Sicherer ist es, einen dedizierten Benutzer anzulegen, der ausschließlich für die Steuerung und Verwaltung der Ghost-Software zuständig ist. Um diesen Benutzer einzurichten, öffnen Sie ein Terminal auf Ihrem Server und wechseln Sie mit dem Befehl su zum Root-Benutzer.

Fügen Sie von dort aus mit adduser einen neuen Benutzer zu Ihrem Ubuntu-System hinzu:

adduser ghost-admin

Nutzen Sie das usermod-Tool, um den Benutzer ghost-admin der sudo-Gruppe hinzuzufügen. Dadurch erhält das neu erstellte Konto sudo-Rechte, um Befehle auf Root-Ebene auszuführen:

usermod -aG sudo ghost-admin

Setzen Sie mithilfe von passwd ein sicheres Passwort für den Benutzer ghost-admin. Verwenden Sie dafür am besten einen sicheren Passwortgenerator.

passwd ghost-admin

Melden Sie sich nach der Passworteinrichtung vom Root-Benutzer ab und beim Benutzer ghost-admin an mit:

su ghost-admin

Installation des LEMP-Stacks (Linux, Nginx, MySQL und PHP)

Ghost läuft optimal mit einem LEMP-Stack und nicht mit einem LAMP-Setup. Das bedeutet, dass sowohl das Installationsprogramm als auch die Entwickler Nginx als Webserver gegenüber Apache2 bevorzugen.

Hinweis: Es ist zwar möglich, Ghost auch mit Apache2 zu betreiben, dies wird jedoch in diesem Tutorial nicht behandelt. Weitere Anleitungen finden Sie in der offiziellen Ghost-Dokumentation.

Wenn Sie bereits ein LAMP-Setup (Linux, Apache2, MySQL und PHP) auf Ihrem Ubuntu-Server haben, sind die meisten benötigten Werkzeuge bereits installiert. Es ist lediglich erforderlich, Apache2 durch Nginx zu ersetzen. Führen Sie dazu folgende Befehle aus:

sudo -s

systemctl stop apache2

apt remove --purge apache2

Ersetzen Sie Apache2 anschließend durch Nginx:

sudo -s

apt install nginx

systemctl enable nginx

systemctl start nginx

ufw allow 'Nginx Full'

Wenn Sie noch keine Web-Tools auf Ihrem Server haben, starten Sie mit folgendem Befehl die Installation eines LAMP-Stacks. Sie werden durch die Einrichtung von MySQL und anderen Komponenten geführt. Nachdem die Installation abgeschlossen ist, folgen Sie den oben genannten Schritten, um Apache2 zugunsten von Nginx zu entfernen.

sudo apt install lamp-server^

Hinweis: Während der LAMP-Installation werden Sie von MySQL aufgefordert, ein Root-Passwort festzulegen. Verwenden Sie ein sicheres Passwort. Dieses ist erforderlich, damit Ghost-CLI korrekt funktioniert.

Node.JS installieren

Die Ghost-Blogging-Plattform benötigt Node.JS. Installieren Sie daher das NodeSource APT-Repository:

Hinweis: Stellen Sie sicher, dass das Curl-Paket installiert ist, bevor Sie fortfahren.

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash

Installieren Sie nach der Einbindung von Curl NodeJS über die Ubuntu-Paketverwaltung auf Ihrem Server.

Hinweis: Stellen Sie sicher, dass alle Systemupdates auf Ihrem Ubuntu-Server installiert sind, bevor Sie mit der Installation von NodeJS beginnen, um einen reibungslosen Ablauf zu gewährleisten.

sudo apt-get install nodejs

Ghost-Cli installieren

Ghost basiert auf dem NodeJS-Werkzeugsatz. Daher wird eine NPM-Version von Ghost mitgeliefert, mit der Benutzer die Software einfach und automatisiert auf jeder Linux-Version installieren und deinstallieren können, sofern NPM/NodeJS und Nginx laufen.

Stellen Sie zunächst sicher, dass NPM selbst auf Ubuntu installiert ist. Dies ist notwendig, da NodeJS nicht immer NPM mitliefert und es sich um separate Pakete handelt, die zusammenarbeiten.

sudo apt install npm

Installieren Sie anschließend mit dem Node-Paketmanager npm die neueste Version des Ghost-CLI-Pakets:

sudo npm i -g ghost-cli

Ghost mithilfe von Ghost-Cli installieren

Alle notwendigen Komponenten für die Installation von Ghost sind nun auf Ihrem Server vorhanden. Sie müssen nun lediglich die aktuelle Version abrufen und korrekt starten. Erstellen Sie dazu zuerst ein Verzeichnis im Root-Webserver-Ordner. Für Nginx ist dies normalerweise /var/www/.

Legen Sie über den zuvor erstellten Benutzer einen Ghost-Ordner im Webverzeichnis an:

sudo mkdir -p /var/www/ghost/

Wechseln Sie mit dem Befehl cd in das neue Ghost-Verzeichnis. Es ist wichtig, dass die Shell direkt aus /var/www/ghost/ arbeitet, andernfalls kann das Ghost-CLI-Tool nicht korrekt funktionieren.

cd /var/www/ghost/

Starten Sie Ghost-CLI. Das Tool arbeitet automatisiert und stellt einige Fragen. Starten Sie die Ersteinrichtung mit:

sudo ghost install

Die erste Frage, die Ghost-CLI stellt, ist: „Wie lautet Ihre Blog-URL?“. Geben Sie Ihren Domainnamen ein und bestätigen Sie mit der Eingabetaste.

Ghost-CLI fordert Sie nun zur Eingabe von MySQL-Informationen auf. Geben Sie als Hostnamen „localhost“ ein. Geben Sie dann das zuvor eingerichtete MySQL-Root-Passwort und den Root-Benutzernamen ein. Folgen Sie den Anweisungen des Installationsprogramms, und Ghost wird in Kürze auf Ihrem Server laufen.

Nachdem das CLI-Installationsprogramm abgeschlossen ist, können Sie Ihr neues Blog unter https://ihredomain.de/ghost einrichten und mit dem Schreiben beginnen.