Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Datenbank beim Start von docker-compose erstellen

Es gibt auch eine Option, eine Init-Datei für mysql bereitzustellen Container, der jedes Mal angewendet wird, wenn ein Container erstellt wird.

database:
    image: mysql:5.7
    ports:
        - "33061:3306"
    command: --init-file /data/application/init.sql
    volumes:
        - ./init.sql:/data/application/init.sql
    environment:
        MYSQL_ROOT_USER: root
        MYSQL_ROOT_PASSWORD: secret
        MYSQL_DATABASE: homestead
        MYSQL_USER: root
        MYSQL_PASSWORD: secret

Eine solche Datei (init.sql ) könnte Ihre anfängliche Datenbankstruktur und Daten enthalten – zum Beispiel:

CREATE DATABASE IF NOT EXISTS dev;
CREATE DATABASE IF NOT EXISTS test;
USE dev;
CREATE TABLE IF NOT EXISTS (...);