Mysql
 sql >> Database >  >> RDS >> Mysql

Crea database all'avvio di Docker-Compose

C'è anche un'opzione per fornire un file init per mysql contenitore che verrà applicato ogni volta che viene creato un contenitore.

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

Tale file (init.sql ) potrebbe contenere la struttura e i dati del database iniziale, ad esempio:

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