So richten Sie WordPress mit Docker in Ubuntu ein

Docker Wordpress Installation
⏱️ 9 min read

WordPress ist das weltweit beliebteste Content-Management-System (CMS). Mehr als 40 % des Webs läuft auf WordPress. Docker ist ein Containersystem, mit dem Sie Ihre Software in einer isolierten Umgebung ausführen können. Das Konzept der Containerisierung ist in der Welt der Softwareentwicklung nicht neu. Aber Docker macht es sehr entwicklerfreundlich.

In diesem Artikel zeigen wir Ihnen, wie Sie eine WordPress-Site in einem Docker-Container installieren.

Warum Docker?

Warum Docker, fragen Sie sich vielleicht?

Die Antwort ist Einfachheit. In Docker ist Ihre Anwendung in einem Image containerisiert. Es ist keine komplizierte Installation und Konfiguration erforderlich, um es zum Laufen zu bringen.

Ganz zu schweigen davon, dass es für Sie auch schneller und einfacher ist, auf einen anderen Server zu migrieren/aktualisieren. Angenommen, Ihr WordPress wird sehr beliebt und Sie müssen Ihren vorhandenen Server aktualisieren? Mit Docker ist das einfach, da alles bereits containerisiert ist. Wenn Sie etwas mit Docker entwickeln, funktioniert es nach der Bereitstellung überall.

Docker-Installation

In diesem Artikel werden wir eine Docker-Engine innerhalb des Ubuntu-Servers installieren.

Wenn Sie eine ältere Version von Docker auf Ihrem System installiert haben, entfernen Sie diese, bevor Sie etwas installieren. Führen Sie diesen Befehl in Ihrem Terminal aus, um alle älteren Versionen von Docker zu entfernen.

sudo apt autoremove docker docker-engine docker.io containerd runc

Beginnen wir nun mit unserer Installation:

  1. Aktualisieren Sie Ihre lokalen Paketindizes, indem Sie apt-get update ausführen und Abhängigkeiten für die Docker-Engine installieren.
sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release
  1. Fügen Sie den offiziellen GPG-Schlüssel von Docker hinzu.
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  1. Richten Sie das Repository ein.
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. Installieren Sie die neueste Version der Docker-Engine.
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
  1. Überprüfen Sie die Docker-Installation, indem Sie ein Hello-World-Image ausführen.
sudo docker run hello-world

Wenn dieses Hello-World-Docker-Image fehlerfrei läuft, dann herzlichen Glückwunsch. Sie haben Docker erfolgreich auf Ihrem Ubuntu Linux-Rechner installiert.

Docker-Desktop-Installation

Wenn Sie ein Desktop-Linux-Benutzer sind und Docker für Ihre Entwicklungszwecke installieren möchten, sollte der Docker-Desktop im Vergleich zur Docker-Engine der bevorzugte Kandidat sein. Docker Desktop bietet ein einheitliches Erlebnis und eine plattformunabhängige Methode zum Erstellen, Ausführen und Pushen von Docker-Images.

Docker-Desktop

Docker-Desktop in Linux wird in einer virtuellen Maschine ausgeführt, was dem gemeinsam genutzten Kernel-Modell der Docker-Engine ziemlich entgegengesetzt ist. Aus diesem Grund muss Ihre CPU Virtualisierungstechnologie und Linux KVM unterstützen, damit Docker Desktop funktioniert. Sie können den Virtualisierungsstatus in Ihren UEFI/BIOS-Einstellungen überprüfen. Docker Desktop wird in wichtigen Linux-Distributionen wie Ubuntu, Debian und Fedora unterstützt.

Die Notwendigkeit, eine virtuelle Maschine für den Docker-Desktop zu verwenden, ist vielfältig. Einige davon werden im Folgenden beschrieben.

  1. Die Verwendung einer virtuellen Maschine bietet dem Docker-Desktop eine konsistente Leistung und Erfahrung auf allen Plattformen (Windows, Linux, macOS, Raspberry Pi usw.).
  2. Da Benutzer sich an die Release-Version mit Langzeitunterstützung ihrer Distribution halten, erhalten sie nicht die Vorteile der neuesten Kernel-Funktionen. Die Verwendung einer VM löst dieses Problem. Jetzt kann Docker seine Kernel-Version auswählen und mit dem neuesten Linux-Kernel arbeiten.
  3. Die Verwendung einer virtuellen Maschine bietet dem Benutzer auch Sicherheit. Wie wir wissen, kann jeder Bilder in den Docker-Hub hochladen. Manchmal können Bilder schädlichen Code enthalten, der Ihren Desktop ausnutzen kann. Wenn Sie solche schädlichen Bilder auf Ihren Computer ziehen, können diese Bilder Ihren Computer zerstören.
  4. Da der Docker-Desktop in einer virtuellen Maschine arbeitet, können bösartige Bilder die Hostmaschine nicht beeinträchtigen. Das macht den Docker-Desktop zu einem unwiderstehlichen Kandidaten, um neue Docker-Images auszuprobieren.

Stellen Sie zunächst sicher, dass Ihr System KVM, qemu, systemd-init und App Indicator unterstützt. Sie müssen mindestens 4 GB RAM auf Ihrem System haben.

  1. Deinstallieren Sie alle früheren Versionen von Docker-Desktop, die auf Ihrem System installiert sind
sudo apt remove docker-desktop
  1. Führen Sie für eine vollständige Bereinigung und Bereinigung aller Konfigurationsdateien den folgenden Befehl aus
rm -r $HOME/.docker/desktop
sudo rm /usr/local/bin/com.docker.cli
sudo apt purge docker-desktop
  1. Richten Sie das Docker-Paket-Repository ein, indem Sie die folgenden Befehle ausführen.
sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
 
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. Gehen Sie jetzt zu diesem Freigabeseite und laden Sie die neueste herunter .deb Paket von Docker-Desktop.
  2. Installiere das .deb Paket mit dpkg.
sudo apt update
sudo apt install ./docker-desktop-<version>-<arch>.deb

Um den Docker-Desktop zu starten, suchen Sie im Anwendungsmenü und starten Sie die Anwendung wie eine normale. Dort sehen Sie einen Begrüßungsleitfaden. Folgen Sie der Anleitung, um mehr über Docker Desktop für Linux und seine Verwendung zu erfahren. Sie können Container und Images auch mit Hilfe der Docker-Desktopanwendung erstellen.

Dienstleistungen, die wir für WordPress benötigen

Wir benötigen hauptsächlich 3 Komponenten, um WordPress in Docker-Containern auszuführen. Zuerst brauchen wir WordPress selbst, dann brauchen wir eine MySQL-Datenbank und dann brauchen wir einen Speicherplatz oder ein Volume.

WordPress speichert alle seine benutzergenerierten Daten in einer MySQL-Datenbank. Daher spielt die MySQL-Datenbank eine entscheidende Rolle in unserer WordPress-Installation.

Der Speicherplatz oder das Volume wird benötigt, wenn Sie neue Designs oder Plugins installieren möchten. Diese Design- oder Plug-in-Dateien werden im Volume-Speicherplatz gespeichert.

Verwenden einer Docker-Compose-Datei

Da unsere Anwendung mehr als einen Dienst benötigt, verwenden Sie am besten Docker-compose. Docker Compose ist ein Docker-Tool, das Docker-Container initiiert und verwaltet und eine Beziehung zwischen ihnen herstellt.

  1. Erstellen Sie eine neue docker-compose.yml-Datei.
sudo nano docker-compose.yml
  1. Aus dem vorherigen Abschnitt haben wir gelernt, dass wir hauptsächlich 3 Dienste benötigen. WordPress selbst, eine MySQL-Datenbank und Volume-Speicherplatz. Daher sieht unsere Docker-Compose-Datei so aus. Sie können diese docker-compose.yml-Datei kopieren, wenn Sie keine weiteren Anpassungen benötigen.
version: '3.3'

services:
   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     volumes:
       - wordpress_files:/var/www/html
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: my_wordpress_db_password

   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: my_db_root_password
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: my_wordpress_db_password

volumes:
    wordpress_files:
    db_data:

In der obigen Docker-Compose-Datei definieren wir zunächst WordPress und DB (unter Verwendung der MySQL-Datenbank) als Dienst. Dann hängt WordPress von DB ab, um seine Daten zu speichern. Wir verwenden das neueste WordPress-Image, um einen WordPress-Container zu erstellen. Der WordPress-Container reserviert Port 80. Dies ist der Standardport für Webdienste. Daher, wenn Sie Ihre eingeben http://domain-name.com URL in Ihrem Browser, liefert Ihnen dieser WordPress-Container eine Antwort.

Innerhalb des Datenbankdienstes verwenden wir das MySQL-Image der Version 5.7, um unseren Container zu erstellen. Dann geben wir alle notwendigen Anmeldeinformationen, um mit unserem WordPress-Container zu sprechen.

Endlich definieren wir unsere Volumina. Dort werden alle WordPress-Dateien und Datenbankdaten gespeichert. Wenn Sie dieses Setup auf einem Server ausführen, müssen Sie dieses Volume regelmäßig sichern.

WordPress in Docker ausführen

Erstellen Sie nun einen Ordner oder ein Verzeichnis und verschieben Sie diese docker-compose.yml-Datei in das Verzeichnis. Führen Sie dann diesen Befehl aus.

docker-compose up -d

Nach diesem Befehl zieht Docker alle Bilder, die wir in unserer docker-compose.yml-Datei beschreiben, und erstellt daraus einen Container. Der erste Lauf kann lange dauern, da Docker alle Dateien von DockerHub herunterladen muss. Nachdem die Dinge eingerichtet sind, sollten Sie beim Laden Ihrer Server-IP-Adresse in den Browser den WordPress-Installationsbildschirm sehen.

Herzliche Glückwünsche! Sie haben WordPress erfolgreich in einem Docker-Container ausgeführt. Beachten Sie, dass dies noch nicht bedeutet, dass es für den Produktionseinsatz bereit ist – Sie müssen noch ein SSL-Zertifikat einrichten.

Wenn Sie mehr über Docker erfahren möchten, können Sie diesem anfängerfreundlichen Artikel folgen.

Häufig gestellte Fragen

Kann ich Docker-Desktop gleichzeitig mit der Docker-Engine ausführen?

Ja, Sie können den Docker-Desktop und die Docker-Engine gleichzeitig auf Ihrem Computer ausführen. Aber wenn beide Dienste auf dieselben Systemressourcen wie Netzwerkports oder Volumes zugreifen müssen, entsteht ein Konflikt zwischen ihnen. Daher ist es ratsam, einen Dienst zu stoppen, bevor Sie einen starten.

Docker-Desktops können einfach mit Hilfe einer GUI-App (Graphical User Interface) gestoppt werden. Führen Sie den folgenden Befehl aus, um die Docker-Engine zu stoppen.

sudo systemctl stop docker docker.socket containerd
sudo systemctl disable docker docker.socket containerd

Wie starte ich die WordPress-Site nach dem Neustart automatisch?

Wenn Sie Ihren Server wegen Wartungsarbeiten oder zum Aktualisieren einiger Dinge angehalten haben, können Sie ihn so konfigurieren, dass WordPress nach jedem Neustart mit Docker automatisch gestartet wird. Einfach hinzufügen restart: always -Parameter unter jedem Dienst Ihrer Docker-Compose-Datei. Sie können diesen von uns hinzugefügten Parameter in der Datei docker-compose.yml sehen.

Kann ich Nginx mit Docker-compose und WordPress verwenden?

Ja, Sie können Nginx oder jeden anderen Servertyp verwenden, um WordPress-Inhalte mit Docker bereitzustellen. Nginx kann auch als Reverse-Proxy verwendet werden. Sie können Ihren Datenverkehr einfach verteilen, indem Sie Nginx mit Docker und WordPress installieren.

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Benutzerbild von Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Das könnte dich auch interessieren …

Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x