MySQL-Setup und Dump-Import innerhalb der Docker-Datei
Das Erstellen einer Docker-Datei zum Einrichten einer MySQL-Datenbank und zum Importieren eines Dumps ist eine häufige Aufgabe im Web Entwicklung. Beim MySQL-Start können jedoch Probleme auftreten.
Das Problem in der bereitgestellten Docker-Datei könnte in der fehlenden Initialisierungsphase für den MySQL-Server liegen. Um dieses Problem zu beheben, sollten Sie die Verwendung der neuesten Version des offiziellen MySQL-Docker-Images in Betracht ziehen, das die Datenbankerstellung und den Dump-Import während des Containerstarts vereinfacht.
Hier ist ein Beispiel für docker-compose.yml, das diesen Ansatz demonstriert:
data: build: docker/data/. mysql: image: mysql ports: - "3307:3306" environment: MYSQL_ROOT_PASSWORD: 1234 volumes: - ./docker/data:/docker-entrypoint-initdb.d volumes_from: - data
In diesem Beispiel wird die Datei data-dump.sql im Verzeichnis /docker-entrypoint-initdb.d im Container bereitgestellt. Das Docker-Einstiegspunktskript übernimmt den Importvorgang beim Start des Containers.
Wenn Sie außerdem Daten nach dem Stoppen oder Entfernen des MySQL-Containers beibehalten möchten, verwenden Sie einen separaten Datencontainer. Der Inhalt der Docker-Datei des Datencontainers kann wie folgt vereinfacht werden:
FROM n3ziniuka5/ubuntu-oracle-jdk:14.04-JDK8 VOLUME /var/lib/mysql CMD ["true"]
Mit diesem Setup bleiben die Daten unabhängig vom Status des MySQL-Containers bestehen.
Das obige ist der detaillierte Inhalt vonWie kann man einen MySQL-Dump effizient in einem Docker-Container einrichten und importieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!