rukzuk – simply powerful web design

Wie richte ich rukzuk auf einem eigenen Server ein?

Die folgende Anleitung zeigt euch die Einrichtung von rukzuk auf einem V-Server von Strato mit Hilfe der Software "Plesk". Bei anderen Anbietern sieht der Ablauf sehr ähnlich aus. Alle Schritte, die Plesk betreffen, sind vom Serveranbieter unabhängig. In diesem Beispiel wird die "Web Admin Edition" von Plesk verwendet.

Anleitung zur Einrichtung von rukzuk auf einem V-Server von Strato

Bei Strato (wie auch bei jedem anderen Webhoster) gibt es eine Verwaltungsoberfläche, über die ihr euren V-Server kontrollieren könnt. Auf der Oberfläche könnt ihr den Server neu starten, neu einrichten, Backups einspielen etc. Und ihr seht die aktuellen Daten zu eurem Server. In meinem Fall sieht das so aus:

Unter dem Menüpunkt „Serverzugriff -> Plesk Lizenzkey“ seht ihr, wie ihr die Verwaltungssoftware Plesk auf eurem V-Server aufrufen könnt. Jeder V-Server verfügt über eine eigene IP-Adresse. Plesk erreicht man üblicherweise über den Port 8843 (auch bei anderen Webhostern). Konkret bedeutet das, dass ihr im Browser folgendes eingeben müsst: https://<IP-Adresse des V-Servers>:8843.

In Plesk einloggen

Wenn ihr Plesk aufruft, kann es sein, dass der Browser eine Sicherheitswarnung anzeigt, da zur IP-Adresse kein SSL-Zertifikat vorhanden ist:

Ignoriert diese Warnung, in dem ihr auf „Erweitert -> Risiko akzeptieren und fortfahren“ klickt.

Nun seht ihr den Login-Screen von Plesk. Dort loggt ihr euch mit „admin“ oder „root“ und dem Passwort, das in den Serverdaten angezeigt wurde („initiales Root-Passwort“), ein.

Nun seid ihr in Plesk eingeloggt und seht diese Seite:

Auf aktuelle Plesk-Updates überprüfen

Zuerst müsst ihr prüfen, ob die aktuellste Plesk-Version auf eurem V-Server installiert ist. Meistens ist das nicht der Fall. Ihr braucht unbedingt die neueste Version, da es bei einigen älteren Versionen immer wieder Probleme mit Docker gab.

Um das zu prüfen, klickt ihr auf „Tools & Einstellungen -> Updates & Upgrades“:

Auf dem nächsten Screen seht ihr eure aktuelle Plesk-Version und den Hinweis, ob eine neuere Version vorliegt. Falls dies der Fall ist, klickt bitte auf „Produkt installieren oder aktualisieren“:

Jetzt müsst ihr nur noch auf „Fortfahren“ klicken und die neueste Version von Plesk wird installiert. Das kann schon einige Minuten dauern.

Nachdem das Update durchgeführt wurde müsst ihr euch wieder in Plesk einloggen.

Plesk Docker-Erweiterung installieren

Um Docker-Container in Plesk anlegen und verwalten zu können, müsst ihr die kostenlose Erweiterung „Docker“ installieren. Dazu ruft ihr die Seite „Erweiterungen“ in Plesk auf. Es kann dann eine Seite erscheinen, auf der ihr angeben müsst, wie mit der Mehrwertsteuer beim Kauf kostenpflichtiger Erweiterungen umgegangen wird. Da die Docker-Erweiterung kostenlos ist, spielt das in diesem Fall keine Rolle.

Auf der nächsten Seite gebt ihr um Suchfeld rechts oben „Docker“ ein und drückt „Enter“.

Nun wird die Docker-Erweiterung angezeigt. Klickt auf „kostenlos nutzen“, um die Erweiterung zu installieren.

Jetzt wird die Docker-Erweiterung installiert.

rukzuk Docker-Container anlegen

Nach der Installation der Docker-Erweiterung erscheint in der linken Leiste der Eintrag „Docker“. Klickt bitte darauf und gebt im Suchfeld der dann erscheinenden Seite „rukzuk“ ein:

Damit wird das Verzeichnis „Dockerhub“, das eine Vielzahl von Docker-Images bereitstellt, durchsucht. Das rukzuk-Image liegt ebenfalls dort (https://hub.docker.com/r/rukzuk/rukzuk/).

Nun erscheinen mehrere Einträge zu rukzuk. Wählt das Image „rukzuk/rukzuk“ aus, in dem ihr auf „Ausführen“ klickt.

Das Image wird nun heruntergeladen:

Nach der Installation erscheint eine Seite, auf der die Einstellungen des Docker-Containers konfiguriert werden.

Dort müssen wir später noch einige Einstellungen vornehmen. Aber zuerst klickt einfach mal auf „OK“. Damit wird der Container gestartet. Nach ein paar Minuten sollte euch folgende Seite angezeigt werden:

Diese Seite zeigt euch einen Überblick über den laufenden Container mit dem Namen „rukzuk“. Wenn ihr nun auf das kleine blaue Icon in der rechten Spalte klickt, öffnet sich eure eigene rukzuk-Installation in einem neuen Browserfenster.

Der voreingestellte Login lautet rukzuk@example.com und das Passwort dazu „admin123“.

ACHTUNG: Damit seid ihr noch nicht fertig. Es müssen noch ein paar Einstellungen am Container vorgenommen und eine Domain verbunden werden.

rukzuk richtig konfigurieren

Um die Einstellungen des Containers richtig zu setzen, ruft nochmals die Seite „Docker -> rukzuk -> Einstellungen“ auf. Dort müsst ihr folgende Einträge ändern:

Automatischer Start
Aktiviert das Häkchen bei „Automatischer Start nach dem Systemneustart“. Damit wird auch der Docker-Container automatisch gestartet, wenn der Server neu gestartet wird.

Port-Mapping
Entfernt das Häkchen bei „Automatisches Port-Mapping“. In den dann erscheinenden Feldern gebt ihr im ersten Feld „80“ (bereits so ausgefüllt) und im zweiten Feld „8600“ ein. Damit ist rukzuk von außen über den Port „8600“ erreichbar. Solltet ihr mehrere Docker-Container mit rukzuk betreiben, dann müsst ihr bei jedem Container einen anderen Port eingeben, z.B., „8601“.

Volume-Mapping
Ein Docker-Container ist nicht dazu geeignet, Daten dauerhaft zu speichern. Sobald man einen Docker-Container beendet, sind die im Container gespeicherten Daten weg. Um das zu verhindern, speichert rukzuk die Daten außerhalb des Docker-Containers.

Wir müssen nun angeben, wo auf dem Server die Daten gespeichert werden sollen. Dazu gibt es natürlich viele Möglichkeiten. Mein Vorschlag ist, die Daten im Verzeichnis „/var“ abzulegen. Dieses Verzeichnis existiert auf jedem Linux-System. Gebt neben dem Feld „/srv/rukzuk/htdocs/cms“ den Pfad „/var/rukzuk/cms“ ein und neben dem Feld „/var/lib/mysql“ den Pfad „/var/rukzuk/mysql“ ein.

Im ersten Pfad werden übrigens alle Dateien wie Bilder, PDFs, Seiten, Layouts etc. und im zweiten Pfad die Daten der Datenbank abgelegt.

Variablen hinzufügen
Jetzt müssen noch drei zusätzlichen Einstellungen hinzugefügt werden. Klickt dazu dreimal auf "Variable hinzufügen".

CMS_URL
Gebt hier die URL ein, über die eure rukzuk-Installation (später) erreichbar ist, z.B. rukzuk.<meinedomain>.de. Bitte mit https:// davor!

SMTP_USER
Für das Versenden von E-Mails (z.B. für die Passwort-vergessen Funktion) braucht der Container die Angabe eine SMTP-Servers.

SMTP_PASSWORD
Hier gebt ihr das Passwort de SMTP-Users ein.

Als SMTP-Server könnt ihr den Server verwenden, der auch ansonsten eure E-Mails verschickt. Es gibt ausserdem viele Anbieter, die einen SMTP-Server für ein begrenztes Volumen kostenfrei anbieten. Der Anbieter Mailjet bietet beispielsweise den kostenlosen Versand von bis zu 6000 E-Mails pro Monat an. 

Klickt nun auf „OK“. Der Container wird dann mit den neuen Einstellungen gestartet.

Domain oder Subdomain mit dem rukzuk-Container verbinden

Euer rukzuk-Container läuft jetzt und eigentlich könntet ihr ihn jetzt auch schon verwenden. Aber der Zugriff auf rukzuk ist noch sehr unkomfortabel. Es existiert kein SSL-Zertifikat und der Zugriff ist nur über IP-Adresse und Port möglich.

Im Folgenden zeige ich, wie ihr euren Container mit einer Subdomain, z.B. „rukzuk.meinedomain.de“ verbindet.

Dazu müsst ihr zuerst den DNS-Eintrag für eure Subdomain richtig setzen. Das macht ihr in der Verwaltungsoberfläche eures Domain-Anbieters. Legt dort die Subdomain an und fügt einen A-Record mit der IP-Adresse eures V-Servers hinzu.

Bei mir sieht das beispielsweise so aus (im Feld „Ziel“ steht die IP-Adresse des V-Servers):

Danach loggt ihr euch wieder in Plesk ein und klickt auf „Domain hinzufügen“:

Auf dem danach folgenden Bildschirm gebt ihr die Daten der Subdomain ein, in unserem Beispiel für „rukzuk.meinedomain.de“. Lasst euch nicht von dem „www.“ davor irritieren, das spielt erstmal keine Rolle.

Ihr müsst auch noch einen Benutzer anlegen, der diesen Webspace verwalten darf. Der Eintrag ist für uns unerheblich, aber dennoch solltet ihr ein gutes Passwort dazu eingeben.

Nachdem ihr auf „OK“ geklickt hat, seht ihr die neu eingerichtete Website:

SSL-Zertifikat installieren

Damit die Verbindung zu eurer rukzuk-Installation über https läuft, müsst ihr noch ein Zertifikat installieren. SSL-Zertifikate gibt es kostenlos über „Let’s encrypt“. Dazu müsst ihr nochmals eine Plesk-Erweiterung installieren. Geht zu „Plesk -> Erweiterungen“ und sucht nach „let’s encrypt“. Klickt dann auf „Kostenlos nutzen“, um die Erweiterung zu installieren.

Geht nun wieder zu „Websites & Domains“ und wählt bei eurer Website den Eintrag „SSL-/TLS-Zertifikate“.

Auf der nächsten Seite wählt ihr „Kostenlos nutzen“ beim Eintrag „Powered bei Let’S Encrypt“.

Es fährt dann eine Seitenleiste aus, auf der ihr die Einstellungen des Zertifikates vornehmen könnt. Gebt im Feld „E-Mail-Adresse“ eine gültige und aktive E-Mail Adresse ein und klickt auf „Kostenlos nutzen“. Das Zertifikat wird nun erzeugt.
Achtung: Das funktioniert nur, wenn die Subdomain mit eurem V-Server über den A-Record verbunden ist!

Website mit Docker-Container verbinden

Diese Website muss jetzt noch mit dem Docker-Container verbunden werden. Dabei fungiert die Website als ein Proxy, d.h. alle Anfragen an die Website werden intern an den Docker-Container weitergeleitet.

Zum Einrichten als Proxy geht ihr nun wieder zu „Websites & Domains“, klickt auf „Proxyregel für Docker“ und dann auf „Regel hinzufügen“:

Auf dem folgenden Bildschirm wählt ihr unter „Container“ den Eintrag „rukzuk“ und klickt auf „OK“. Damit ist der Proxy eingerichtet.

Jetzt sollte eure rukzuk-Installation über die angegebene URL erreichbar sein.

Falls es jetzt noch nicht funktioniert, ist bei euch wahrscheinlich die Webserversoftware „nginx“ noch nicht installiert und /oder gestartet. Um das zu überprüfen, geht ihr nochmals auf „Tools & Einstellungen -> Updates“:

Auf der darauf folgenden Screen klickt ihr auf „Komponenten hinzufügen/entfernen“.

Anschließend klickt ihr unter „Web hosting“ auf den Pfeil nach unten beim  Eintrag „nginx“, wählt „Installieren“ und klickt auf „Fortsetzen“. Nginx wird nun auf eurem V-Server installiert.

Jetzt muss der nginx noch gestartet werden. Dazu geht ihr wieder zu „Plesk -> Tools & Einstellungen“ und wählt „Service-Verwaltung“.

Um nginx zu starten, klickt ihr auf das „Play“-Symbol beim Eintrag „Reverse-Proxy-Server (nginx)“.

Jetzt sollte beim Aufruf eurer Subdomain die rukzuk Anmeldmaske erscheinen. Damit ist eure rukzuk-Installation betriebsbereit!

Bitte vergesst nicht, den Standard-Login sofort zu ändern!

© 2020 rukzuk AG