Wer weiterhin auf PHP5 angewiesen ist, für den wird die Auswahl des passenden Serversystems immer schwieriger. Glücklicherweise gibt es die Docker-Extension für Plesk mit der man PHP5 nahtlos als Docker Container in Plesk  integrieren kann.

PHP5 als Docker-Container in Plesk: Lokal vorbereiten

Der Einfachheit halber wählen wir einen fertiges Docker Image mit Apache, PHP5, MySQL und PHPMyAdmin in einem einzigen Container: LAMP bei Mat Trayner. Da der Autor auch Images mir PHP7 und PHP8 anbietet, geben wir bei der Installation die Version explizit an. Das Image installieren wir zuerst lokal auf unserem Rechner:

Nach Start des Docker-Containers wir das Admin-Passwort für MySQL eingeblendet. Dieses notieren wir uns:

Des weiteren wurden folgenden lokalen Ordner angelegt:

  • ./apps: Für unsere Web App
  • ./mysql: Für unsere MySQL-Datenbank

Es werden folgende Ports verwendet:

  • 8080 für Apache
  • 8306 für MySQL

Wir kopieren unsere Daten nach ./apps und starten PHPMyAdmin mit http://127.0.0.1:8080/phpmyadmin . Wir loggen uns mit „admin“ und dem notierten Passwort ein und importieren unsere Datenbank. Danach passen wir die Konfig-Datei unserer App entsprechend an. Aus Sicht unserer App läuft MySQL unter „localhost“ auf Port 3306.

Wir beenden den Container mit CMD-Q.

Docker-Container mit PHP5 unter Plesk installieren

Leider hat die Docker-Extension unter Plesk einen lästigen Bug, der das einfache Importieren von lokalen Images erschwert. Daher gehen wir wie folgt vor:

Wir melden uns per SSH an unserem Server an. Danach legen wir einen Ordner für unseren PHP5-Container an. Im folgenden Beispiel heißt unsere Domain marketmix.com und unser Container xmailforum:

Danach machen wir das Gleiche, was wir lokal gemacht haben: Den Docker-Container starten:

Wir beenden den Container und füllen die beiden Ordner ./apps und ./mysql per FTP oder scp mit unseren lokalen Daten.

Nun öffnen wir Plesk. Hier wird nun unser Docker-Image angezeigt. Wir starten es per Klick auf „Run“:

PHP5 Docker-Container unter Plesk konfigurieren

Als nächstes wählen wir „Settings“ und machen folgende Eingaben:

  • Kein Memorylimit
  • Automatischer Start: An
  • Automatisches Post Mapping: Aus
  • Manual Mapping: Port 3306 auf 8306, 80 auf 8080
  • Volume Mapping: /app auf /var/www/vhosts/marketmix.com/_docker/xmailforum/app und /var/lib/mysql auf /var/www/vhosts/marketmix.com/_docker/xmailforum/mysql
  • Bei Environment-Vars löschen wir den Eintrag, welcher das lokale Passwort generiert: MYSQL_PASS

Danach bestätigen wir mit OK. Der Container sollte dann fehlerfrei hochfahren und bereits existierende MySQL-Daten melden.

Plesk: Docker Proxy Rules konfigurieren

Damit der PHP5 Docker-Container von Außen zugänglich wird, müssen noch entsprechende Proxy-Regeln in Plesk eingestellt werden. Hierzu öffnen wir die Domainverwaltung (hier verwenden wir die Subdomain xmailforum.marktemix.com) und klicken auf Docker Proxy Rules:

Hier reicht eine Weiterleitung von Port 80 extern auf 8080 intern:

Danach erreichen wir unsere PHP5-App über eine reguläre URL, hier https://xmailforum.marketmix.com

Die o.g. Domain läuft übrigens live im Docker-Container. Es ist kein Unterschied zu einer normalen Installation zu erkennen. Docker rennt genau so performant, wie der reguläre Webserver.

Hat Dir der Beitrag gefallen?

Wenn Du Fragen oder Anmerkungen zu diesem Beitrag hast, dann starte einen Kommentar. DANKE für Dein Feedback!