Mysql
 sql >> Base de données >  >> RDS >> Mysql

Créer une base de données au démarrage de docker-compose

Il existe également une option pour fournir un fichier init pour mysql conteneur qui sera appliqué à chaque création de conteneur.

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

Ce fichier (init.sql ) peut contenir la structure et les données initiales de votre base de données - par exemple :

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