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

¿Cómo crear una base de datos en el contenedor de la ventana acoplable de la base de datos?

Puede usar tanto docker como docker-compose. Por ejemplo, con docker componer.

Cree un archivo llamado docker-compose.yml como:

version: '3'
services:
  db:
    image: percona:5.7
    container_name: whatever_you_want
    environment:
      - MYSQL_DATABASE=${DATABASE}
      - MYSQL_ROOT_PASSWORD=${ROOT_PASSWORD}
      - MYSQL_USER=${USER}
      - MYSQL_PASSWORD=${PASSWORD}
    volumes:
      - ./data:/docker-entrypoint-initdb.d
    ports:
      - "3306:3306"

Además, necesita un archivo en ./data con cualquier comando SQL que desee ejecutar y .env archivo donde defines las variables ambientales que usé en docker-compose.yml archivo anterior como:${DATABASE}

Tu .env archivo:

# MySQL
DATABASE=db_name_here
ROOT_USER=root
ROOT_PASSWORD=root
USER=dev
PASSWORD=dev

Su archivo con comandos SQL para ejecutar ./data/init.sql (puedes nombrar el archivo como quieras)

CREATE DATABASE 'whatever';
DROP DATABASE 'whatever';
-- you can do whatever you want here

Este archivo se ejecutará cada vez que lo haga:

docker-compose up -d db