Heim Betrieb und Instandhaltung Docker So führen Sie eine Datenbankspiegelung mit Docker durch

So führen Sie eine Datenbankspiegelung mit Docker durch

Apr 26, 2023 am 10:27 AM

Docker ist derzeit die beliebteste Containerisierungstechnologie, die Anwendungen und ihre Abhängigkeiten in einen unabhängigen Container packen und in verschiedenen Umgebungen ausführen kann. Datenbanken sind eine Kernkomponente von Anwendungen, und die Ausführung von Datenbanken in Docker ist ein sehr häufiges Szenario, da es eine bequeme, sichere und wiederholbare Möglichkeit zum Testen, Bereitstellen und Skalieren von Datenbankanwendungen bietet.

Wie erstellt man also ein Datenbank-Image in Docker? Die Schritte zum Erstellen eines MySQL-Datenbankspiegels werden im Folgenden ausführlich beschrieben.

1. Laden Sie das offizielle MySQL-Image herunter

Sie können das MySQL-Image mit dem folgenden Befehl von Docker Hub herunterladen:

docker pull mysql/mysql-server
Nach dem Login kopieren

Obwohl Wir können das offizielle MySQL-Image direkt verwenden, es entspricht jedoch möglicherweise nicht unseren Anforderungen, z. B. Konfigurationsdateien, Initialisierungsskripten, Datensicherung usw. Daher müssen wir ein individuelles Bild erstellen, das auf dem offiziellen Bild basiert und unseren Anforderungen entspricht.

1. Erstellen Sie eine Docker-Datei

Dockerfile ist eine Textdatei, die eine Reihe von Anweisungen zum Erstellen eines Docker-Images enthält. Wir verwenden das offizielle MySQL-Image als Grundlage und erstellen dann ein benutzerdefiniertes Image, indem wir Konfigurationsdateien, Initialisierungsskripte, Datensicherung usw. hinzufügen.

In diesem Beispiel erstellen wir eine Dockerfile-Datei mit folgendem Inhalt:

FROM mysql/mysql-server

# 安装telnet和net-tools
RUN yum update && yum install -y telnet net-tools

# 添加自定义配置文件
ADD my.cnf /etc/mysql/my.cnf

# 添加初始化脚本
ADD init.sql /docker-entrypoint-initdb.d/

# 添加数据备份
ADD backup.sql /tmp/backup.sql
Nach dem Login kopieren

Die Erklärung der obigen Dockerfile-Datei lautet wie folgt:

VON mysql/mysql-server: Verwenden Sie das offizielle MySQL-Image als Basisimage.
  • RUN yum update && yum install -y telnet net-tools: Installieren Sie die Telnet- und Net-Tools-Tools.
  • MY.cnf /etc/mysql/my.cnf HINZUFÜGEN: Fügen Sie die benutzerdefinierte Konfigurationsdatei my.cnf zum Verzeichnis /etc/mysql/ hinzu.
  • Init.sql /docker-entrypoint-initdb.d/ HINZUFÜGEN: Fügen Sie das Initialisierungsskript init.sql zum Verzeichnis /docker-entrypoint-initdb.d/ hinzu.
  • Backup.sql /tmp/backup.sql hinzufügen: Datensicherung backup.sql zum Verzeichnis /tmp/ hinzufügen.
  • 2. Erstellen Sie das Image

In diesem Beispiel haben wir Dockerfile-Dateien, benutzerdefinierte Konfigurationsdateien, Initialisierungsskripte, Datensicherung und andere Ressourcen vorbereitet. Als nächstes müssen Sie den folgenden Befehl in dem Verzeichnis ausführen, in dem sich die Dockerfile-Datei befindet, um das Image zu erstellen:

docker build -t my-mysql:latest .
Nach dem Login kopieren

Unter anderem wird -t zum Benennen des Images verwendet und :latest bedeutet, die neueste Version zu verwenden.

3. Führen Sie den MySQL-Container aus

Nachdem wir erfolgreich ein benutzerdefiniertes MySQL-Image erstellt haben, führen wir das Image im Container aus und weisen dem Container einen Namen zu:

docker run -d -p 3306:3306 --name my-mysql -v /data/mysql:/var/lib/mysql my-mysql
Nach dem Login kopieren

Unter anderem bedeutet -d, dass der Container ausgeführt wird Im Hintergrund ordnet -p den 3306-Port des Containers dem 3306-Port des Hosts zu, -v ordnet das /data/mysql-Verzeichnis des Hosts dem /var/lib/mysql-Verzeichnis des Containers zu und my-mysql stellt den Namen des Containers dar.

Jetzt können wir mit dem MySQL-Client-Tool eine Verbindung zum MySQL-Container herstellen und testen, ob er ordnungsgemäß läuft.

mysql -h 127.0.0.1 -P 3306 -u root -p
Nach dem Login kopieren

4. Fazit

Durch diesen Prozess haben wir gelernt, wie man ein benutzerdefiniertes MySQL-Image in Docker erstellt und das Image ausführt. Dies erleichtert das Testen, Bereitstellen und Skalieren von Datenbankanwendungen. In tatsächlichen Projekten können wir nach Bedarf weitere benutzerdefinierte Konfigurationen und Initialisierungsskripte sowie Sicherungs- und Wiederherstellungsdaten und andere Funktionen hinzufügen.

Das obige ist der detaillierte Inhalt vonSo führen Sie eine Datenbankspiegelung mit Docker durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Fragen zum Docker -Interview: Ace Ihr DevOps Engineering Interview Fragen zum Docker -Interview: Ace Ihr DevOps Engineering Interview Apr 06, 2025 am 12:01 AM

Docker ist ein Muss für DevOps-Ingenieure. 1.Docker ist eine Open -Source -Containerplattform, die Isolation und Portabilität durch Verpackung von Anwendungen und deren Abhängigkeiten in Container erreicht. 2. Docker arbeitet mit Namespaces, Kontrollgruppen und föderierten Dateisystemen. 3. Die grundlegende Nutzung beinhaltet das Erstellen, Ausführen und Verwalten von Containern. 4. Erweiterte Verwendung umfasst die Verwendung von DockerComponpose zur Verwaltung von Anwendungen mit mehreren Konten. 5. Zu den häufigen Fehlern gehören Containerausfall, Port -Mapping -Probleme und Datenpersistenzprobleme. Zu den Debugging -Fähigkeiten gehören das Anzeigen von Protokollen, das Eingeben von Containern und das Anzeigen detaillierter Informationen. 6. Leistungsoptimierung und Best Practices umfassen Bildoptimierung, Ressourcenbeschränkungen, Netzwerkoptimierung und Best Practices für die Verwendung von DockerFile.

Härtung der Docker -Sicherheit: Schutz Ihrer Container vor Schwachstellen Härtung der Docker -Sicherheit: Schutz Ihrer Container vor Schwachstellen Apr 05, 2025 am 12:08 AM

Zu den Methoden zur Verbesserung der Docker Security Enhancement gehören: 1. Verwenden Sie den Parameter-Cap-Drop, um Linux-Funktionen zu begrenzen. Diese Strategien schützen Container, indem sie die Exposition gegenüber der Verwundbarkeit reduzieren und die Fähigkeiten des Angreifers einschränken.

Docker -Bände: Verwalten anhaltender Daten in Containern Docker -Bände: Verwalten anhaltender Daten in Containern Apr 04, 2025 am 12:19 AM

Dockervolumes stellt sicher, dass Daten sicher bleiben, wenn Container neu gestartet, gelöscht oder migriert werden. 1. Erstellen Sie Volumen: DockervolumecreatemyData. 2. Führen Sie den Container- und Mount-Volumen aus: Dockerrun-it-vmydata:/App/DataUbuntubash. 3. Die erweiterte Nutzung umfasst Datenaustausch und Backup.

Verwenden von Docker mit Linux: eine umfassende Anleitung Verwenden von Docker mit Linux: eine umfassende Anleitung Apr 12, 2025 am 12:07 AM

Die Verwendung von Docker unter Linux kann die Entwicklung und die Bereitstellungseffizienz verbessern. 1. Installieren Sie Docker: Verwenden Sie Skripte, um Docker auf Ubuntu zu installieren. 2. Überprüfen Sie die Installation: Führen Sie die Sudodockerrunhello-Welt aus. 3. Basisnutzung: Erstellen Sie einen Nginx-Container-Dockerrun-Namemy-Nginx-P8080: 80-DNGinx. 4. Erweiterte Verwendung: Erstellen Sie ein benutzerdefiniertes Bild, erstellen und führen Sie mit Dockerfile aus. 5. Optimierung und Best Practices: Befolgen Sie Best Practices zum Schreiben von Dockerfiles mit mehrstufigen Builds und DockerComponpose.

Erweiterte Docker -Netzwerk: Mastering Bridge, Host & Overlay Networks Erweiterte Docker -Netzwerk: Mastering Bridge, Host & Overlay Networks Apr 03, 2025 am 12:06 AM

Docker bietet drei Hauptnetzwerkmodi: Bridge Network, Host Network und Overlay Network. 1. Das Brückennetz ist für eine Intercontainer-Kommunikation auf einem einzelnen Host geeignet und wird über eine virtuelle Brücke implementiert. 2. Das Host-Netzwerk eignet sich für Szenarien, in denen Hochleistungsnetzwerke erforderlich sind, und der Container verwendet direkt den Netzwerkstapel des Hosts. 3. Das Overlay-Netzwerk eignet sich für Multi-Host-Docker-Warm-Cluster, und die Cross-Host-Kommunikation wird durch die virtuelle Netzwerkschicht realisiert.

Docker Swarm: bauen skalierbare und belastbare Behältercluster Docker Swarm: bauen skalierbare und belastbare Behältercluster Apr 09, 2025 am 12:11 AM

Dockerswarm kann verwendet werden, um skalierbare und hoch verfügbare Containercluster zu erstellen. 1) Initialisieren Sie den Schwarmcluster mithilfe von Dockerswarminit. 2) Schließen Sie sich dem Swarm-Cluster an, um Dockerswarmjoin zu verwenden-gesprochen:. 3) Erstellen Sie einen Dienst mit DockerServicecreate-Namemy-Nginx-Replicas3nginx. 4) Bereitstellen komplexer Dienste mit DockStackdeploy-Cdocker-compose.ymlmyApp.

Docker -Überwachung: Sammeln von Metriken und Verfolgung von Behälter Gesundheit Docker -Überwachung: Sammeln von Metriken und Verfolgung von Behälter Gesundheit Apr 10, 2025 am 09:39 AM

Der Kern der Docker -Überwachung besteht darin, die Betriebsdaten von Containern zu sammeln und zu analysieren, wobei hauptsächlich Indikatoren wie CPU -Nutzung, Speicherverbrauch, Netzwerkverkehr und Festplatten -I/A enthalten sind. Durch die Verwendung von Tools wie Prometheus, Grafana und Cadvisor können eine umfassende Überwachung und Leistungsoptimierung von Containern erreicht werden.

Best Practices der Dockerfile: Schreiben effizienter und optimierter Bilder Best Practices der Dockerfile: Schreiben effizienter und optimierter Bilder Apr 02, 2025 pm 02:07 PM

Wie erstelle ich ein effizientes und optimiertes Docker -Bild? 1. Wählen Sie das entsprechende Grundbild, wie z. B. offizielles oder alpines Bild. 2. ordnen Sie die Reihenfolge der Anweisungen vernünftig an und verwenden Sie den Docker -Cache -Mechanismus. 3.. Verwenden Sie mehrstufige Konstruktionen, um die Bildgröße zu verringern. 4. Minimieren Sie die Anzahl der Spiegelschichten und verführen Sie die Anweisungen für den Lauf. 5. Temporäre Dateien beseitigen, um unnötigen Dateiraum zu vermeiden.

See all articles