Richten Sie einen MySQL -Server und einen Phpmyadmin mit Docker ein

Richten Sie einen MySQL -Server und einen Phpmyadmin mit Docker ein
In diesem Artikel werde ich Ihnen zeigen, wie Sie Docker Compose verwenden, um einen MySQL-Container zu erstellen und mithilfe von PHPMYADMIN 5, der webbasierten MySQL Admin-Schnittstelle, auf ihn zugreifen zu können. Ich werde Ihnen auch zeigen, wie Sie auf den MySQL -Datenbankserver zugreifen. Also lasst uns anfangen.

Anforderungen:

Um diesem Artikel zu folgen, müssen Sie Docker auf Ihrem Computer installieren lassen. LinuxHint verfügt über viele Artikel. Überprüfen Sie also LinuxHint unbedingt.Com für den Fall, dass Sie Probleme haben, Docker zu installieren.

Installieren von Docker Compose:

Sie können Docker Compose Binärdatei sehr einfach mit dem folgenden Befehl herunterladen:

$ sudo curl -l "https: // github.com/docker/komponieren/veröffentlichen/download/1.24.1/
Docker-Compose-$ (uname -s)-$ (uname -m) "-O/usr/local/bin/docker-compose

NOTIZ: Locken Kann nicht auf Ihrer Linux -Verteilung installiert werden. Wenn dies der Fall ist, können Sie Curl mit dem folgenden Befehl installieren:

Ubuntu/Debian/Linux Mint:

$ sudo apt installieren curl -y

CentOS/Rhel/Fedora:

$ sudo dnf installieren curl -y

Einmal Docker-Compose Binärdatei wird heruntergeladen, führen Sie den folgenden Befehl aus:

$ sudo chmod +x/usr/local/bin/docker-compose

Überprüfen Sie nun, ob Docker-Compose Der Befehl funktioniert wie folgt:

$ docker-compose Version

Es sollte die Versionsinformationen wie im unten gezeigten Screenshot drucken.

Einrichten von Docker Compose für das Projekt:

Erstellen Sie nun ein Projektverzeichnis (sagen wir, sagen wir ~/docker/mysqldev) folgendermaßen:

$ mkdir -p ~/docker/mysqldev

Navigieren Sie nun zum Projektverzeichnis ~/docker/mysqldev folgendermaßen:

$ cd ~/docker/mysqldev

Erstellen Sie jetzt eine Docker-Compose.Yaml Datei im Projektverzeichnis ~/docker/mysqldev und geben Sie die folgenden Zeilen in die Docker-Compose.Yaml Datei.

Version: "3.7 "
Dienstleistungen:
Mysql-Server:
Bild: Mysql: 8.0.19
Neustart: Immer
Umfeld:
MySQL_ROOT_PASSWORD: Geheimnis
Bände:
- Mysql-data:/var/lib/mysql
Häfen:
- "3306: 3306"
phpmyadmin:
Bild: phpmyadmin/phpmyadmin: 5.0.1
Neustart: Immer
Umfeld:
PMA_HOST: Mysql-Server
Pma_user: root
PMA_Password: Geheimnis
Häfen:
- "8080: 80"
Bände:
Mysql-data:

Der Docker-Compose.Yaml Die Datei sollte wie folgt aussehen.

Hier habe ich 2 Dienste erstellt Mysql-Server Und phpmyadmin.

Mysql-Server Der Service wird die ausführen MySQL: 8.0.19 Bild (von DockerHub) in einem Docker -Container.

phpmyadmin Der Service wird die ausführen phpmyadmin/phpmyadmin: 5.0.1 Bild (aus Dockerhub) in einem anderen Docker -Container.

In Mysql-Server Service, der Mysql_root_password Umgebungsvariable wird verwendet, um die festzulegen Wurzel Passwort von MySQL.

In phpmyadmin Service, der PMA_HOST, PMA_USER, PMA_PASSWORD Umgebungsvariablen werden verwendet, um den MySQL -Hostnamen, den Benutzernamen und den Kennwort festzulegen, mit dem PHPMYADMIN eine Verbindung zum MySQL -Datenbankserver herstellt Mysql-Server Service.

In Mysql-Server Service, der gesamte Inhalt der /var/lib/mysql Verzeichnis wird dauerhaft in der gerettet Mysql-Data Volumen.

Im Mysql-Server Service, der Containerport 3306 (rechts) wird dem Docker -Host -Port zugeordnet 3306 (links).

Im phpmyadmin Service, der Containerport 80 (rechts) wird dem Docker -Host -Port zugeordnet 8080 (links).

Starten von MySQL Server und PhpMyAdmin -Diensten:

Nun, um die zu starten Mysql-Server Und phpmyadmin Dienste, den folgenden Befehl ausführen:

$ docker -compose up -d

Die Dienste sollten im Hintergrund beginnen.

Um zu sehen, wie die Ports zugeordnet werden, führen Sie den folgenden Befehl aus:

$ docker-compose ps

Wie Sie sehen können, für die Mysql-Server Service, der Docker Host -Port 3306 wird dem Container -TCP -Port zugeordnet 3306.

Für die phpmyadmin Service, der Docker Host -Port 8080 wird dem Container -TCP -Port zugeordnet 80.

Zugriff auf PhpMyAdmin 5 oder MySQL Server von anderen Computern:

Wenn Sie von anderen Computern in Ihrem Netzwerk auf PHPMYADMIN 5- oder MySQL -Datenbankserver zugreifen möchten, müssen Sie die IP -Adresse Ihres Docker -Hosts kennen.

Um die IP -Adresse Ihres Docker -Hosts zu finden, führen Sie den folgenden Befehl aus:

$ ip

In meinem Fall die IP -Adresse meines Docker -Hosts 192.168.20.160. Es wird für Sie anders sein. Stellen Sie also sicher, dass Sie es von nun an durch Ihre ersetzen.

Zugriff auf PhpMyAdmin 5 aus dem Webbrowser:

Um auf PhpMyAdmin 5 zuzugreifen, öffnen Sie Ihren Webbrowser und besuchen Sie http: // localhost: 8080 von Ihrem Docker -Host oder http: // 192.168.20.160: 8080 von anderen Computern in Ihrem Netzwerk.

PhpMyAdmin 5 sollte in Ihrem Webbrowser geladen werden.

Sie werden die folgende Warnung sehen. Klicke auf Finde heraus warum.

Klicken Sie nun auf Erstellen.

A phpmyadmin Die Datenbank sollte erstellt werden und die Warnung sollte verschwunden sein.

Jetzt können Sie PhpMyAdmin verwenden, um Ihre MySQL -Datenbanken und -Tabellen zu verwalten.

Zugriff auf MySQL von DataGrip:

Sie können auch auf Ihren MySQL -Datenbankserver von DataGrip IDE oder anderen SQL -IDEs zugreifen.

Klicken Sie im Falle von DataGrip auf + von dem Datenbanken Abschnitt und gehen zu Datenquelle > Mysql.

Tippen Sie nun ein 192.168.20.160 als Gastgeber, 3306 als Hafen, Wurzel als Benutzer, Geheimnis als Passwort und dann klicken Sie auf Testverbindung.

Wenn alles in Ordnung ist, sollten Sie die Informationen zur MySQL -Datenbankserver sehen, wie im Screenshot unten gezeigt.

Klicken Sie nun auf OK.

Jetzt sollten Sie in der Lage sein, Ihre MySQL -Datenbanken und -Tabellen aus DataGrip zu verwalten.

Stoppen von MySQL Server und PhpMyAdmin -Diensten:

Nun, um das zu stoppen Mysql-Server Und phpmyadmin Dienste, den folgenden Befehl ausführen:

$ docker-compose down

Der Mysql-Server Und phpmyadmin Dienstleistungen sollten gestoppt werden.

Reinigen Sie MySQL -Serverdaten:

Wenn Sie alle Daten und Datenbankdaten und Einstellungen von MySQL entfernen möchten, müssen Sie die entfernen Mysql-Data Volumen.

Sie können den tatsächlichen Namen des Bandes mit dem folgenden Befehl finden:

$ Docker Volume LS

Wie Sie sehen können, ist das zu entfernene Volumen mysqldev_mysql-data.

Sie können das Volumen entfernen mysqldev_mysql-data mit dem folgenden Befehl:

$ Docker Volume RM mysqldev_mysql-data

Verweise:

[1] https: // Hub.Docker.com/_/mysql
[2] https: // Hub.Docker.com/r/phpmyadmin/phpmyadmin/