sql >> Base de Datos >  >> RDS >> Mysql

Crear base de datos en el inicio de docker-compose

También hay una opción para proporcionar un archivo de inicio para mysql contenedor que se aplicará cada vez que se cree un contenedor.

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

Dicho archivo (init.sql ) podría contener la estructura y los datos de su base de datos inicial, por ejemplo:

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