Behalten Sie Ihre Daten bei: Führen Sie MariaDB mit Docker aus

Veröffentlicht: 2022-10-25

MariaDB ist ein kostenloser Datenbankserver, der den Datenzugriff über eine strukturierte Abfragesprache (SQL) ermöglicht. Es bietet Sicherheitsfunktionen wie Passwörter, rollenbasierte Zugriffskontrolle und vieles mehr, um Ihre Daten zu schützen.

Um MariaDB bereitzustellen und Ihren Benutzern Datenzugriff zu gewähren, müssen Sie den Datenbankserver hosten. Sie können sich für einen Cloud-Anbieter entscheiden oder Managed- oder Shared-Hosting-Dienste nutzen.

In diesem Artikel erfahren Sie, wie Sie MariaDB mit einem Docker-Container ausführen, den Datenbankserver konfigurieren und ausführen und ihn mit einer WordPress-Website verbinden.

Was ist Docker?

Docker ist ein kostenloses Entwicklertool, mit dem Sie Anwendungen in einer kontrollierten Umgebung namens Container ausführen können. Container verfügen über Anwendungscode, Abhängigkeiten und wichtige Systemtools zum Ausführen Ihrer App. Auf diese Weise können Sie während des gesamten Softwareentwicklungslebenszyklus robuste Anwendungen bereitstellen.

Normalerweise verwenden Container Ihr Betriebssystem als Host. Das bedeutet, dass der Kernel des Host-Rechners Zugriff auf Ressourcen wie CPUs, Arbeitsspeicher und das Dateisystem bereitstellt. Daher ist keine traditionelle Virtualisierung wie virtuelle Maschinen erforderlich. Die Verwendung von Docker zum Ausführen einer MariaDB-Instanz bietet mehrere Vorteile:

  • Es hat einen kleinen digitalen Fußabdruck und gewährleistet eine effiziente Nutzung der Systemressourcen.
  • Es ist konsistent und ermöglicht es Entwicklern, Apps in Produktions- und Testbereitstellungen mit minimalen Änderungen auszuführen.
  • Es bietet einen flexiblen Mechanismus für die gemeinsame Nutzung von Ressourcen.
  • Es ist skalierbar – Sie können viele Container auf einem einzigen Host ausführen.

So stellen Sie MariaDB mit Docker bereit

In diesem Abschnitt erstellen Sie containerisierte Umgebungen, um MariaDB mit Docker auszuführen. Sie lernen die von Docker angebotene Container-Technologie kennen. Docker funktioniert auf den meisten Versionen von Windows-, macOS- und Linux-Distributionen. Für dieses Tutorial benötigen Sie Windows 10/11, Ubuntu 20.04 oder einen macOS X-Computer, um mitzumachen.

1. Installieren Sie Docker

Eine der besten Eigenschaften von Docker ist seine Portabilität. Es verwendet das Betriebssystem des Hosts und ist daher ideal für Test- und Veröffentlichungsumgebungen. In diesem Abschnitt erfahren Sie, wie Sie Docker auf den drei Betriebssystemen installieren.

Ubuntu 20.04

Aktualisieren Sie zunächst die Paketliste von Ubuntu.

 sudo apt-get update

Erlauben Sie dann den Zugriff auf Online-Repositories über HTTPS.

 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

Docker über das Terminal installieren.
Fügen Sie als Nächstes den 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

Fügen Sie nun das Repository von Docker hinzu.

 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

Aktualisieren Sie dann die Ubuntu-Pakete so, dass sie das Docker-Repository enthalten.

 sudo apt-get update

Installieren Sie schließlich Docker Engine.

 sudo apt-get install docker-ce

Wenn Sie eine andere Linux-Distribution wie Debian oder Fedora verwenden, folgen Sie der offiziellen Dokumentation zum Installieren von Docker unter Linux.

Windows 10/11

Docker ist unter Windows 10 oder 11 mit Windows Subsystem for Linux Version 2 (WSL 2) als Backend verfügbar. Verwenden Sie die folgenden Schritte, um Docker zu installieren.

Aktivieren Sie zunächst die Virtual Machine Platform-Funktion auf Ihrem Windows-System. Dadurch können Sie WSL 2 installieren und eine virtualisierte Linux-Instanz auf Ihrem Windows-Computer installieren und ausführen.

Installieren Sie als Nächstes WSL.

Besuchen Sie dann den Microsoft Store, um Ubuntu 20.04 herunterzuladen.

Laden Sie schließlich Docker Desktop für Windows herunter. Öffnen Sie die heruntergeladene Datei, um den Installationsvorgang zu starten.

Suchen Sie nach der Installation in Ihrer Taskleiste nach „Docker Desktop“ und öffnen Sie es.

( Hinweis: Sie müssen PowerShell als Terminal verwenden, um Docker-Befehle zu verwenden.)

Mac OS X

Docker ist auf macOS-Rechnern über den Apple App Store verfügbar. Es sind zwei Installer verfügbar, die sowohl auf Intel- als auch auf Apple-Chips abzielen.

Laden Sie zunächst das entsprechende Installationsprogramm von einem der obigen Links herunter. Doppelklicken Sie dann, um die heruntergeladene .dmg -Datei zu öffnen.

Ziehen Sie als Nächstes das Docker-Symbol per Drag & Drop in den Anwendungsordner .

Öffnen Sie nun die Docker-App aus dem Anwendungsordner und folgen Sie den Anweisungen, um die Konfiguration abzuschließen.

Doppelklicken Sie nach Abschluss des Installationsvorgangs auf das Docker-Symbol in der Statusleiste Ihres Desktops, um es zu öffnen.

Verwenden Sie das Standardterminal, um Docker-Befehle auszuführen.

2. Laden Sie ein MariaDB-Image herunter

Ein Docker-Image stellt eine Sammlung von Befehlen und Konfigurationen zum Erstellen eines Docker-Containers bereit. Es ist dafür verantwortlich, alles zu installieren, was zum Ausführen einer Anwendung erforderlich ist. Sie finden das offizielle MariaDB-Image von Docker Hub.

Um das Image von MariaDB von Docker Hub herunterzuladen, müssen Sie den Befehl docker pull verwenden:

 docker pull mariadb

Sie können auch eine Liste der heruntergeladenen Docker-Images anzeigen, indem Sie Folgendes ausführen:

 docker images

Dies ist die Befehlsausgabe:

Auflisten von Docker-Images.
Auflisten von Docker-Images.

3. Erstellen Sie einen Container

Ein Container ist eine Softwareeinheit mit allen Codes, Abhängigkeiten und Systemtools, die zum Ausführen eines Prozesses oder Programms erforderlich sind. Sie verwenden das zuvor heruntergeladene Image, um einen MariaDB-Container zu erstellen.

 docker create mariadb --name mariadb-wp -i –t

Dadurch wird ein MariaDB-Container namens mariadb-wp erstellt. Das Flag –i ermöglicht eine interaktive Sitzung, und die Option –t erstellt ein Pseudo-Terminal. Die offizielle Dokumentation gibt Auskunft über alle verfügbaren Variablen.

4. Führen Sie den Container aus, halten Sie ihn an und stoppen Sie ihn

Docker gibt Entwicklern die Flexibilität konfigurierbarer Umgebungen. In diesem Abschnitt konfigurieren wir den Container von MariaDB mit Umgebungsvariablen, um bestimmte Systemeigenschaften für Ihren Container einzurichten.

MariaDB hat viele Variablen, die Sie festlegen können, wie Datenbanknamen, Passwörter und Datenbankbenutzer. Eine breitere Liste der unterstützten Umgebungsvariablen finden Sie in der Docker-Dokumentation für MariaDB.

 docker run -d --name mariadb-wp -p 3306:3306 -v '/path/on/host/:/var/lib/mysql' -e "MARIADB_ROOT_PASSWORD=" -e "MARIADB_DATABASE=wordpress" -e "MARIADB_USER=wordpress" -e "MARIADB_PASSWORD=" mariadb

Der obige Befehl konfiguriert das Root-Passwort, den Datenbankbenutzer und das zugehörige Passwort von MariaDB. Anschließend wird MariaDB auf Port 3306 ausgeführt. Sie können entscheiden, die Ausführung einer Containeranwendung mit dem folgenden Befehl anzuhalten:

 docker pause mariadb-wp

Schließlich können Sie auch eine Anwendung stoppen, die in einem Container ausgeführt wird, indem Sie den folgenden Befehl verwenden:

 docker stop mariadb-wp

5. Verbinden Sie die containerisierte MariaDB mit einer WordPress-Site

Jetzt müssen wir MariaDB mit einer externen WordPress-Website verbinden. Hier erfahren Sie mehr über die lokale Erstellung einer WordPress-Website.

Öffnen Sie im Stammverzeichnis der WordPress-Website die Datei wp-config.php in Ihrem Code-Editor. Suchen Sie den Codeabschnitt, der die Variablen für die Datenbank definiert, und bearbeiten Sie ihn wie unten gezeigt. Stellen Sie sicher, dass Sie beim Erstellen des MariaDB-Containers den Datenbanknamen, das Passwort und die Portnummer verwenden.

 define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', ''); define('DB_HOST', 'http://localhost:3306');

Als nächstes müssen Sie einen Datenbank-Dump Ihrer WordPress-Website in die containerisierte MariaDB importieren. Stellen Sie zunächst sicher, dass Sie die aktuelle Datenbank für die Website exportiert haben. Weitere Informationen finden Sie in unserem MySQL-Datenbank-Backup-Tutorial.

Installieren Sie nach dem Exportieren Ihrer Datenbank den Datenbank-Dump im Container.

 docker exec -i mariadb-wp sh -c 'exec mysql -u root -p "$MARIADB_ROOT_PASSWORD" < /some/path/on/your/host/all-databases.sql'

Mit dem Befehl docker exec können Entwickler Shell-Befehle innerhalb des Containers ausführen. Wir haben eine Datenbank in MariaDB importiert, indem wir eine exportierte Datei im obigen Befehl verwendet haben.

6. Fügen Sie Ihrer WordPress-Site einen neuen Beitrag hinzu

Wir werden einen Beispielbeitrag mit dem WordPress-Administratorkonto erstellen, um diese Integration zu testen.

Melden Sie sich zunächst bei WordPress an und klicken Sie auf Posts > Add New . Geben Sie die Details wie unten gezeigt ein und klicken Sie dann auf Veröffentlichen . Klicken Sie nach dem Erstellen des Beitrags auf Beitrag anzeigen, um den neu hinzugefügten Beitrag anzuzeigen.

Hinzufügen eines neuen Beitrags im WordPress Gutenberg-Editor.
Hinzufügen eines neuen Beitrags im WordPress-Editor.

Und das ist alles, was dazu gehört!

7. MariaDB und Docker mit DevKinsta

Die kostenlose Anwendung von Kinsta, DevKinsta, ermöglicht es Entwicklern, containerisierte WordPress-Sites effizient zu erstellen. Die App verwendet Docker, um PHP-Versionen, Datenbankserver und Webserver zu konfigurieren. Die DevKinsta-App unterstützt Entwickler, die macOS, Windows und Ubuntu/Linux verwenden.

Um zu beginnen, laden Sie DevKinsta herunter, installieren und starten Sie es auf Ihrem lokalen Computer. Die App bietet dir drei Optionen: Erstelle eine neue WordPress-Seite, importiere eine bestehende von Kinsta oder erstelle eine benutzerdefinierte Seite.

DevKinstas neuer Bildschirm zum Erstellen einer neuen Website.
DevKinstas neuer Bildschirm zum Erstellen einer neuen Website.

Das Erstellen einer neuen WordPress-Site ist so einfach wie das Ausfüllen eines einfachen Formulars und das Klicken auf Site erstellen .

DevKinstas neuer WordPress-Site-Erstellungsbildschirm.
DevKinstas neuer WordPress-Site-Erstellungsbildschirm.

Herzlichen Glückwunsch – Sie haben jetzt eine containerisierte WordPress-Website mit DevKinsta erstellt!

Zusammenfassung

Docker ist ein entwicklerfreundliches Tool zum Containerisieren von Software, die Datenbankserver wie MariaDB ausführt. Seine minimalistischen Umgebungen tragen dazu bei, die Effizienz der Systemressourcen aufrechtzuerhalten, ohne die Funktionalität zu beeinträchtigen.

In diesem Tutorial haben Sie gelernt, wie Sie Docker installieren, MariaDB einrichten und eine WordPress-Site mit Ihrer containerisierten MariaDB-Datenbank verbinden. Außerdem hast du gelernt, wie man DevKinsta verwendet, um eine vollständig containerisierte WordPress-Website zu erstellen.

Bei der Erstellung von WordPress-Sites und seinen zahlreichen Hosting-Lösungen gibt es noch viel mehr zu entdecken. Wenn Sie herausfinden möchten, wie einfach Ihre Website-Verwaltung sein kann, ist das verwaltete WordPress-Hosting von Kinsta genau das Richtige für Sie.