Dieser Artikel befasst sich mit dem Deployment von PHP Projekten. Hier erfahrt ihr, welche Gedanken man sich zum Deployment machen muss , welche Funktionalitäten benötigt werden und welche Tools zum Deployment eingesetzt werden können.
Grundlegende Gedanken zum Deployment
- Fehler in PHP lassen sich einfach isolieren
- Deployment findet über einfache Dateien statt: einfach aufspielen und die Anwendung läuft
- minimale globale Abhängigkeiten
- einfache Vervielfältigung der Anwendung durch Kopieren von Dateien
- keine Notwendigkeit Administratoren zu involvieren
- Funktionierende Anwendungen funktionieren
Welche Funktionalität benötigt man für ein Deployment?
- Version Control System Unterstützung
- Komprimierung
- Protokollierung
- Datenübertragung
- Verschlüsselung für die Sicherheit
- Schreiben/Änderung von Dateien (Konfigurationsdateien)
- Paketmanager (deb, rpm, ebuild, pear, ...)/li>
- Webservices (um Informationen abzufragen) </ul>
- PEAR Channels / PHP_Archive
- Linux Paket Mananger (RPM, APT, ebuild)
- Capistrano
- eigene Shell Skripte (Bash, PHP, Python, ruby, ...)
- Ant
- SVN, GIT
- Anwendungsspezifische Deployment Mechanismen
- manueller Weg (FTP, SSH) - nicht wirklich empfehlenswert, aber dennoch sehr häufig verwendet.
- Phar (ab PHP 5.3)
- Stabile und effektive Möglichkeit zur Verteilung/ Verwaltung von Paketen
- PEAR kommt mit der Standardinstallation von PHP
- Standartisiert durch das PHP PEAR Projekt
- einfache Anwendung
- erlaubt komplexe Abhängigkeiten </ul>
- Paket Manager ist vorinstalliert
- mächtiger Funktionsumfang
- Nicht für Windows geeignet
- Distributionsabhängig