Entwicklungs-Server via Docker - Teil I

Ein Apache mit PHP, MariaDB, xDebug und was man sonst so alles braucht

Um Programme mit PHP zu entwickeln benötigt man einen Server. Das kann am Anfang ein simpler XAMPP sein, wachsen aber die Ansprüche muss "etwas richtiges" her.
Wir zeigen Ihnen wie Sie Ihren eigenen Debian Server via Docker aufsetzen.
Dies ist der erste Teil unserer mehrteiligen Anleitung.

In unserer mehrteiligen Serie zeigen wir ihnen wie Sie auf ihrem Windows-Server/Rechner einen virtuelle Linux-Server laufen lassen. Auf diesem laufen dann via Docker ein Container für einen Apache basierten PHP-Entwicklungs-Server, ein Container mit einem Proxy via traefik, und Portainer zum einfachen Verwalten. Dabei lernen Sie wie Sie selbstsignierte Zertifikate für den Server erstellen, damit Sie den Server via https ansprechen können. Ausserdem binden wir xDebug sowohl auf dem Server als auch in PHP-Storm ein.


Leben wir los

Voraussetzungen:
  1. Einen Windows- oder Linux-Server.
  2. Einen Clienterechner (wir nutzen hier Win10)
  3. Ein Netzwerk, das beide verbindet.


Schritt 1: den Linux-Server aufsetzen

Auf diesem läuft später unser docker. Wenn Sie in Ihrem Netzwerk bereits einen Linux-Server haben, können Sie diesen Schritt komplett überspringen. Nutzen Sie dagegen wie wir einen Windows Server, dann installieren wir einen virtuellen Ubuntu Server. Hierzu nutzen wir VirtualBox. Statt Ubuntu können Sie natürlich auch eine andere geeigenete Linux-Distribution verwenden, wir nutzen aber schon seit vielen Jahren Ubuntu für alles Mögliche, von daher...
  1. Laden Sie sich den aktuellen Windowsclient von https://www.virtualbox.org/ herunter.
  2. Installieren Sie VirtualBox auf dem Windows-Server.
  3. laden Sie sich von https://ubuntu.com/download/server die aktuelle Server LTS Version herunter. Die LTS (Long Term Support) Version erhält Sicherheitsupdates für 5 Jahre, damit haben Sie also erst mal etwas Ruhe.
  4. Starten Sie VirtualBox
  5. Legen Sie unter Maschine --> neu (strg+n) eine neue VM mit folgenden Einstellungen an:

    Der Ordner-Pfad und der Name kann frei gewählt werden, damit wir später nicht durcheinander kommen nennen wir die VM hier mal "Ubuntu"
  6. Die nun folgende Schritte können Sie einfach immer mit weiter bestätigen. 1GB Arbeitsspeicher ist eigentlich ausreichend, wenn Sie genug haben, schaden 2GB aber sicher nicht. Gerne auch 2 CPU-Kerne zuweisen
  7. Die Größe der Festplatte setzen Sie nach Bedarf auch etwas höher. 20-30GB sollten für das Gröbste reichen, da aber nur tatsächlich verwendeter Speicherplatz der virutellen Platte auch auf der pysischen Platte verwendet wird, darf es ruhig etwas größer sein. Aber Vorsicht: zu groß ist auch schlecht, die virtuellen Platten haben haben die Angeohnheit mit der Zeit größer zu werden als Ihr Inhalt. Das Aufräumen eines solchen Festplattenimage ist zeitraubend und dauert um so länger, je größer die Platte eingestellt wurde.
  8. Wenn Sie immer auf "weiter" klicken, ist die virtuelle Maschine dann irgendwann mal angelegt und erscheint links in der Liste der VMs. Dort wählen Sie die dann mit rechter maustaste an und sagen "ändern"
  9. Im Tab "Netzwerk" der nun offnen Einstellungen konfigurieren wir das Netzwerk wie folgt:
  10. Im Reiter Massenspeicher legen wir noch schnell die zuvor heruntergeladne Ubuntu-ISO Datei in das virtuelle Laufwerk. Hierzu klicken wir auf as CD Symbol, klicken auf "Abbild wählen" und navigieren zur ISO:
  11. Mit OK bestätigen, das war's auch schon
  12. Links in der Liste der vorhandenen VMs, doppelklick auf unsere neue VM (Ubuntu), dann startet diese in einem neuen Fenster
  13. Wir wählen "try or Install" aus und lassen alles durchrattern. Sprache wählen wir nach unserem Geschmack aus, wir wählen hier deutsch. Keyboard auch. Installationsart: "Ubuntu Server" und ab dann einfach immer weiter mit "erledigt"
  14. Vor der eigentlichen Intallation müssen wir dann nochmal abnicken, daß wir verstanden haben, daß jetzt alle Daten der festplatte gelöscht werden - ist ja aber eh nichts drauf, also los!
  15. Benutzernamen (wir benutzen in diesem Tutorial ait als benutzername) und Passwort hinterlegen. Beides merken!!! Am besten in einem Passwort Manager - wir empfehlen hier klar: KeyPass oder KeyPassCX. Letzterer ist etwas moderner und einfacher im handling, aber dafür ist das Browserplugin beim klassischen KeyPass etwas besser. Egal wie: beide sind besser als die ganzen Onlinedienste, da Sie Ihre Passwörter auf Ihrem Gerät und nicht in der Cloud speichern (bzw auf Wunsch in der eigenen (Next)Cloud) und so der Herr Ihrer Daten bleiben.
  16. Ubunto Pro können wir auch überspringen
  17. Wir könnten jetzt auch schon Software auswählen, die wir wollen, aber um das Tutorial möglichst allgemeingültig zu halten, machen wir das alles lieber erst später. Vor daher: immer weiter durch klicken (bzw mit den Cursortasten navigieren und Enter drücken :)
  18. nach einer Weile lächelt uns dann die Linux Shell mit unserem benutzername@ubuntu:~$ an und wir sind fertig! Ubuntu ist installiert.

Weiter geht es dann im nächsten Teil der Serie. Darin installieren wir dann docker und setzen traefic auf. Dazu: DNS Einträge auf dem Server & SSL-Zertifikat
Tobias Arnoldt, 10.05.2024 | zurück zur Blog-Übersicht