Piwik mit git installieren und updaten

Piwik mit git installieren

Im Folgenden eine Installationsanleitung, welche mittels Integritätsprüfung über https und git eine unkompromittierte Installation von Piwik weitgehend sicherstellt. Die Anleitung im Folgenden ist eigentlich für Entwicklersysteme gedacht und nicht für Produktionssyteme. Insofern wird sie von Piwik nicht unbedingt unterstützt, insbesondere nicht auf Dauer.

Anzumerken ist außerdem, dass die Update-Funktion auf der Piwik-Oberfläche im Browser nicht funktionieren wird. Grund ist, dass das Update im Kontext des Webservers laufen müsste, der Benutzer des Webservers jedoch keine Schreibrechte besitzt. Ein späteres Update muss also ebenfalls auf der Konsole erfolgen. Die Anleitung sollte nicht im Kontext des Webservers (z. B. www-data) ausgeführt werden, sondern mit einem separaten Benutzer (z. B. webadmin).

Piwik-wwwroot anlegen:

mkdir -p /path/to/piwikcd /path/to/piwik

Piwik vom git-repository herunterladen:

git clone https://github.com/piwik/piwik.git .

Verfügbare Versionen anzeigen:

git tag

Produktionsrelease auswählen:

git checkout 2.14.0

Submodules installieren:

git submodule update

in composer.lock den Abschnitt facebook/xhprof entfernen, also von

{
- "name": "facebook/xhprof",
- "version": "master",

[...] (bis)

- "time": "XXXX-XX-XX XX:XX:XX"
- },

Ansonsten erscheint später ein Fehler, weil man xhprof nicht mit pecl installiert hat:

Building xhprof...
Fatal error: configure script failed! View tmp/xhprof-logs/configure.log for more info.

Und xhprof möchte man auf einem Produktionssystem nicht unbedingt installieren.

Composer installieren:

curl -sS https://getcomposer.org/installer | php

Softwarekomponenten installieren:

php composer.phar install

Development-Modus ausschalten:

./console development:disable

Das Verzeichnis .git muss mittels .htaccess dergestalt abgesichert werden, dass ein unberechtigter Benutzer dieses Verzeichnis nicht lesen oder gar beschreiben darf.

Piwik mit git aktualisieren

Hat man Piwik wie oben beschrieben installiert, dann funktioniert die automatische Update-Funktion in der Benutzeroberfläche nicht mehr. Entsprechend sollte man auch Updates per git auf der Konsole durchführen.

Die Anleitung sollte nicht im Kontext des Webservers (z. B. www-data) ausgeführt werden, sondern mit dem selben Nutzer wie bei der Installation (z. B. webadmin).

Ins Piwik-wwwroot wechseln

cd path/to/piwik

Composer-Versionsstände zurücksetzen auf Originalfassung der aktuell installierten Version:

git checkout composer.lock

Tags von neuen Piwik-Versionen herunterladen

git fetch --tags

Verfügbare Piwik-Versionen anzeigen:

git tag

Produktionsrelease auswählen:

git checkout 2.15.0

Submodules aktualisieren:

git submodule update

In composer.lock den Abschnitt facebook/xhprof entfernen, also von

{
- "name": "facebook/xhprof",
- "version": "master",

[...] (bis)

- "time": "XXXX-XX-XX XX:XX:XX"
- },

Ansonsten erscheint später der bereits in der Installationsanleitung beschriebene Fehler.

Composer aktualisieren:

php composer.phar self-update

Softwaremodule nachziehen:

composer.phar install

Development-Modus ausschalten:

./console development:disable