Bereitstellen von WordPress in Docker Containern
Erfahren Sie, wie Sie eine WordPress-Installation in Docker-Containern ausführen, sowohl manuell als auch mit Docker Compose. WordPress-Entwickler werden es nützlich finden, WordPress in Docker-Containern einzusetzen. Docker ermöglicht es Ihnen, mit mehreren WordPress-Konfigurationen zu testen und mit ein paar einfachen Befehlen eine neue WordPress-Installation zu starten.
Anforderungen
- Ein Server, auf dem CentOS 7 oder Ubuntu 14.04 läuft.
- Installierte und ausgeführte Webservices.
- Docker installiert und läuft.
- Grundkenntnisse in der Verwendung von Docker und Kommandozeilen-Befehlen.
- Optional: Ein grundlegendes Verständnis von Docker Compose.
- 100 % Enterprise-Hardware
- Minutengenaue Abrechnung
- Nur bei uns: Cloud-Funktionen
Ausführen von WordPress in Docker Containern
Eine erfolgreiche WordPress-Installation besteht aus drei Elementen:
-
Der WordPress-Software
-
Einer MySQL- oder MariaDB-Datenbank
-
Den letzten Installationsschritten, die in einem Browser durchgeführt werden
Für die folgenden Beispiele werden die Komponenten WordPress und MySQL/MariaDB in separaten verknüpften Containern ausgeführt. Der Container, auf dem die WordPress-Software läuft, wird einem Port auf dem Host zugeordnet, so dass Sie in einem Browser darauf zugreifen können.
Ausführen eines MySQL/MariaDB-Containers
Führen Sie zunächst einen Container namens my-db mit dem Root-Passwort mysql-password aus. Sie können entweder MySQL oder MariaDB verwenden, was ein Drop-In-Ersatz für MySQL ist.
Achten Sie darauf, dass Sie db-Passwort in ein sicheres Passwort ändern.
MySQL
Starten Sie einen Container mit dem Befehl:
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=db-password -d mysql
MariaDB
Starten Sie einen Container mit dem Befehl:
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=db-password -d mariadb
Ausführen eines WordPress-Containers
Als nächstes führen Sie einen Container aus dem offiziellen WordPress Image aus, der auf den Host-Port 8080 gemapt und mit dem Datenbank-Container verknüpft wird.
Zwei Anmerkungen:
- Wenn Sie eine Firewall haben, müssen Sie möglicherweise den Zugriff auf Port 8080 hinzufügen.
- Wenn Sie bereits einen anderen Dienst auf Port 8080 ausgeführt haben, können Sie einen anderen Port auf dem Host auswählen.
Der Befehl variiert leicht, je nachdem, ob Sie MySQL oder MariaDB verwenden:
MySQL
Starten Sie einen WordPress-Container mit dem Befehl:
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mysql -d wordpress
- In Sekunden zur professionellen WordPress Website mit KI-Tools
- Jetzt bis zu 3x schneller dank SSD, Caching & optimierter Plattform
- Tägliche Sicherheits-Scans, DDoS-Schutz und 99,98 % Verfügbarkeit
MariaDB
Starten Sie einen WordPress-Container mit dem Befehl:
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mariadb -d wordpress
Es gibt viele andere Umgebungsvariablen, die Sie zu diesem Befehl hinzufügen können, wenn Sie die Standardeinstellungen überschreiben möchten, einschließlich:
- -e WORDPRESS_DB_HOST=[hostname] Der Standard ist die IP-Adresse und der Port des verknüpften MySQL/MariaDB-Containers. Mit dieser Variable können Sie auf eine MySQL/MariaDB-Datenbank auf einem anderen Server zugreifen.
- -e WORDPRESS_DB_USER=[username] Der Standard ist root.
- -e WORDPRESS_DB_PASSWORD=[password] Der Standard ist die Umgebungsvariable MYSQL_ROOT_PASSWORD des verknüpften MySQL/MariaDB-Containers.
- -e WORDPRESS_DB_NAME=[name] Die Voreinstellung ist "wordpress".
Beenden der Installation in einem Browser
Für die letzten Installationsschritte müssen Sie über einen Browser auf den WordPress-Container zugreifen.
Im vorherigen Beispiel haben wir den Port 8080 auf dem Host auf den Port 80 (Webservices) auf dem Container gemapt. Auf diese Weise können Sie in einem Browser entweder über die IP-Adresse oder über die URL des Servers auf den Container zugreifen:
Besuchen Sie die URL in einem Browser, wählen Sie Ihre Installationssprache und klicken Sie dann auf Continue (Weiter).
Auf der nächsten Seite füllen Sie die Felder aus.
- Titel der Website: Füllen Sie den Titel Ihrer Website aus.
- Benutzername: Dies ist der wichtigste administrative Benutzername für Ihre Website. Hinweis: Aus Sicherheitsgründen empfehlen wir Ihnen, "Admin" oder den Namen oder die URL Ihrer Website NICHT für diesen Benutzernamen zu verwenden.
- Passwort: Notieren Sie sich dieses Passwort, bevor Sie fortfahren.
- Deine E-Mail: Dies ist die E-Mail-Adresse für den wichtigsten administrativen Benutzernamen.
Klicken Sie dann auf die Schaltfläche WordPress installieren, um die Installation abzuschließen.
Mit Docker Compose WordPress ausführen
Die Verwendung von Docker Compose zur Ausführung von WordPressIt ist einfach zu starten. Informationen zur Installation und Verwendung von Docker Compose finden Sie in unserem Artikel Docker-Orchestration mit Swarm und Compose.
YAML-Datei Erstellen
Erstellen Sie zunächst ein Verzeichnis für Ihr Projekt und wechseln Sie in dieses:
sudo mkdir wordpress
cd wordpress
Erstellen Sie eine YAML-Datei namens docker-compose.yml mit dem Befehl:
sudo nano docker-compose.yml
Der Inhalt der Datei variiert leicht, je nachdem, ob Sie MySQL oder MariaDB verwenden:
MySQL
Fügen Sie Folgendes in die Datei ein:
wordpress:
image: wordpress
links:
- wordpress_db:mysql
ports:
- 8080:80
wordpress_db:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: db-password
Achten Sie darauf, dass Sie db-Password durch ein sicheres Passwort ersetzen.
Speichern und beenden Sie die Datei.
MariaDB
Fügen Sie Folgendes in die Datei ein:
wordpress:
image: wordpress
links:
- wordpress_db:mariadb
ports:
- 8080:80
wordpress_db:
image: mariadb
environment:
MYSQL_ROOT_PASSWORD: db-password
Achten Sie darauf, dass Sie db-Password durch ein sicheres Passwort ersetzen.
Speichern und beenden Sie die Datei.
Starten Sie die Container
Als nächstes verwenden Sie Docker Compose, um diese Container mit folgendem Befehl zu starten:
sudo docker-compose up -d
Mit diesem Befehl können Sie überprüfen, ob die Container erstellt wurden:
sudo docker-compose ps
Um die Installation abzuschließen, besuchen Sie den WordPress-Container in einem Browser. Verwenden Sie hierzu entweder die IP-Adresse oder die URL des Servers: