mariadb:
image: mariadb
restart: on-failure
environment:
MARIADB_ROOT_PASSWORD: "xxxx"
MARIADB_DATABASE: "v2ex"
MARIADB_USER: "v2ex"
MARIADB_PASSWORD: "v2expasswd"
上面的 docker-compose 运行之后,会在 mariadb 容器中创建一个名为 V2EX 的数据库,我现在想再创建一个名字为 v2explus 的数据库,有没有办法直接通过 docker-compose 语法实现?
也就是说在单个 mariadb 容器中,创建多个数据库,怎么做到?不使用 sql 脚本的情况下,有没有更方便的方法
1
perfectlife 2023-11-20 10:22:14 +08:00
这个不是 docker-compose 语法支持的,能创建 也是基于 dockerfile 也有的逻辑,试试 MARIADB_DATABASE 写多个值 "v2ex v2explus" ,不行就自己定制基础镜像
|
2
Masoud2023 2023-11-20 11:30:24 +08:00 1
你可以写一个创建数据库的脚本放到目录里,挂载到 `/docker-entrypoint-initdb.d`。
https://hub.docker.com/_/mariadb ,文档有写,Initializing the database contents 。 |
3
julyclyde 2023-11-20 20:22:23 +08:00
容器是应该尽量幂等的,不要把“动作”性的东西放在启动命令里
|