Installation von Cachet bei domainFACTORY

Die Installation von Cachet mit Hilfe des Handbuchs ist eigentlich kein Hexenwerk, wenn ein dedizierte (virtueller) Server dafür genutzt wird. In meinen Fall soll das Ganze auf einem dem Tarif „ManagedHosting“ von domainFACTORY (dF) installiert werden. Wichtig ist, dass der Tarif mindestens einen SSH-Account beinhaltet, da die Installation ansonsten nicht möglich ist. Ebenfalls gibt es für die PHP-Version inkl. Extensions eine Mindestanforderung, welche hier festgehalten sind.

Zu aller erst erstellst du ein neues Quota, SSH-Account, (Sub)Domain im Kundenmenü von dF. Das ist kein Hexenwerk und in wenigen Minuten erledigt. Anschließend via Teraterm, Putty o.ä. eine SSH-Verbindung mit dem zuvor erstellen Zugang aufbauen. Vor allen anderen Schritte muss zu aller erst die .bashrc erweitert weden.

echo "alias composer='php56cli ~/composer/composer.phar'" >> .bashrc
echo "alias php56cli='/usr/local/bin/php5-56STABLE-CLI'" >> .bashrc

Damit die beiden Aliase genutzt werden können, muss die SSH-Sitzung beendet und wieder aufgebaut werden.

Mit der Eingabe von alias kann kontrolliert werden, ob alles passt.

Nun kann der Composer heruntergeladen. Dazu lege wir ein separates Verzeichnis an um eine Struktur aufzubauen und legen dort die die Datei ab.

mkdir composer
cd composer
curl -sS https://getcomposer.org/installer | php56cli

Anschließend kann Cachet heruntergeladen werden. Ich nutze dazu, wenn immer möglich, git. Zu dem Zeitpunkt als ich diesen Artikel geschrieben habe, war Version 2.3.9 die neuste, stabile Version der Anwendung.

cd ..
git clone https://github.com/cachethq/Cachet.git
cd Cachet
git tag -l
git checkout v2.3.9

Damit der Composer später auch die richtige PHP-Version, nämlich 5.6-STABLE nutzt, muss die Datei composer.json im Verzeichnis Cachet modifiziert werden. Mit Hile von Suchen und Ersetzen ist kein manuelles Editieren notwendig. Jeder Slash muss maskiert werden, da dieser als Sonderzeichen definiert ist.

sed -i 's/php /\/usr\/local\/bin\/php5-56STABLE-CLI /g' composer.json

Die letzter Schritt für die Vorbereitung der Installation von Cachet ist die Konfigurationsdatei. Es wird standmäßig ein Beispiel im Repository mit geliefert. Diese kopieren wir einfach um danach die Anpassungen für unsere Installation vornehmen zu können.

cp .env.example .env
vi .env

Darin können die Parameter für die MySQL-Datenbank inkl. Zugangsdaten hinterlegt werden.
Die Änderungen können durch die Tasten :wq gespeichert und die Datei automatisch geschlossen.

Jetzt geht es an die eigentliche Installation von Cachet. Nacheinander sind folgende Befehle auszuführen:

composer install --no-dev -o
php56cli artisan key:generate
php56cli artisan app:install

chmod -R 777 storage
chmod -R 777 bootstrap/
rm -rf bootstrap/cache/*
php56cli artisan config:cache

Je nach Webhosting-Tarif kann die Ausführung etwas Zeit in Anspruch nehmen. Daher einfach nach dem Start einen Kaffee holen und mit den Kollegen einen Smalltalk führen. 🙂

Ist die Installation abgeschlossen so sind noch zwei Ergänzungen durchzuführen. Zu einem wird das Apache2-Modul rewrite in der .htaccess-Datei unter ./Cachet/public/ genutzt.

sed -i '7i \ \ \ \ RewriteBase /' public/.htaccess
sed -i '8i \ \ \ \ AddType application\/x-httpd-php56 .php /' public/.htaccess

Im letzten Schritt muss im Kundenmenü von dF unter Domain-Einstellungen muss das Ziel direkt auf das public-Verzeichnis zeigen:

Unterzeichnis wie z.B. https://www.domain.de/public/ werden nicht unterstützt. Dazu findet man auf Github mehrere Aussage der Entwickler.

Vielen Dank an dieser Stelle an die Community von domainfACTORY für die Unterstützung bei der Installation.

Abonnieren
Benachrichtige mich bei
1 Kommentar
neueste
älteste
Inline Feedbacks
View all comments
Statusseiten-System Cachet aktualisieren – Aus der IT – Praxis…
11.02.2017 15:13

[…] Grund dieses Artikels habe ich Cachet bei domainFACTORY unter PHP 5.6 zum Laufen gebracht. Nachdem einige Tage vergangen […]