Docker 中的多个 MariaDB 数据库

Glu*_*ear 5 mysql mariadb docker

使用 Docker (v.2) 我在我的目录中设置了一个数据库docker-compose.yml

mysql:
    image: mariadb:latest
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: 'test'
      MYSQL_DATABASE: 'test'
      MYSQL_USER: 'test'
      MYSQL_PASSWORD: 'test'
Run Code Online (Sandbox Code Playgroud)

这很好用。我需要做什么才能在同一个容器中创建另一个数据库?

vpa*_*pa2 8

我知道您想在同一个容器中创建两个数据库,对吧?我认为这违背了微服务架构原则。

无论如何,我认为当您初始化一个新实例时这是可能的:

当容器第一次启动时,将创建一个具有指定名称的新数据库,并使用提供的配置变量进行初始化。此外,它将执行在 /docker-entrypoint-initdb.d 中找到的扩展名为 .sh、.sql 和 .sql.gz 的文件。文件将按字母顺序执行。

更新 mariadb/mysql 目录链接下的文件:

DROP USER IF EXISTS 'MYSQL_USER';
CREATE USER 'MYSQL_USER'@'%';
CREATE DATABASE IF NOT EXISTS MYSQL_DATABASE;
GRANT ALL ON MYSQL_DATABASE.* TO 'MYSQL_USER'@'%' IDENTIFIED BY 'MYSQL_PASSWORD';
 --------------your new NewDB----------------------
CREATE DATABASE IF NOT EXISTS NewDB;
GRANT ALL ON NewDB.* TO 'MYSQL_USER'@'%' IDENTIFIED BY 'MYSQL_PASSWORD';
Run Code Online (Sandbox Code Playgroud)