Schreiben Sie zuerst die Docker-Datei wie folgt.
Dockerfile
FROM mariadb:latest
COPY ./init.sql /docker-entrypoint-initdb.d/
VOLUME [ "/var/lib/mysql" ]
Geben Sie in "FROM" das Originalbild von "MariaDB" an.
Dann sendet COPY
die lokale Datei init.sql
an das Verzeichnis / docker-entrypoint-initdb.d /
im Container.
Dies dient dazu, die Tabelle usw. beim Starten des MariaDB-Containers zuerst zu platzieren.
Schließlich speichert VOLUME
die Daten von MariaDB
lokal im Container.
Dies dient dazu, die gespeicherten Daten lokal zu speichern, damit die Daten auch dann nicht verloren gehen, wenn der Container "MariaDB" gestoppt wird.
Durch Vorbereiten von "init.sql" wie unten gezeigt wird die Tabelle beim Starten des Containers erstellt.
init.sql
CREATE DATABASE test;
USE test;
CREATE TABLE test(name varchar(10));
Hier erstellen wir zuerst eine Datenbank mit dem Namen "test".
Wählen Sie dann die Datenbank test
.
Schließlich erstellen wir eine Tabelle mit dem Namen "test".
Hier ist der Spaltenname nur "Name" und sein Typ ist eine Zeichenfolge variabler Länge.
Erstellen Sie nach dem Erstellen der obigen Datei eine Image-Datei für Docker. Führen Sie den folgenden Befehl in dem Verzeichnis aus, in dem sich die obigen Dateien befinden.
$ docker build -t mariadb .
Starten Sie den Container außerdem mit dem folgenden Befehl.
$ docker run --name mariadb -e MYSQL_ROOT_PASSWORD=password -dp 3306:3306 mariadb
Hier lautet der Containername "Mariadb". Das Datenbankkennwort lautet "Kennwort". ** Ohne dies schlägt der Start fehl. ** ** ** Der zu öffnende Port wird durch "lokale Portnummer: Container-Portnummer" angegeben. Hier können Sie auf beide zugreifen, indem Sie "3306" unter "localhost: 3306" öffnen.
Sie können den Container mit dem folgenden Befehl eingeben (obwohl Sie ihn auch über Docker Desktop usw. eingeben können).
$ docker exec -it mariadb bash
Darüber hinaus können Sie "SQL" über die Befehlszeile ausführen, indem Sie in den Container gehen und Folgendes ausführen.
root@4ec9744dff6e:/# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.5.5-MariaDB-1:10.5.5+maria~focal mariadb.org binary distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Recommended Posts