gpt4 book ai didi

mysql docker image 支持在启动时创建多个数据库

转载 作者:行者123 更新时间:2023-11-29 07:25:49 24 4
gpt4 key购买 nike

我需要在一项服务启动时创建数据库。例如:服务:

  db:
image: percona:5.7.24-centos
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: db1
MYSQL_DATABASE_1: db2
MYSQL_PASSWORD: password
network_mode: "host"

但不幸的是,只有一个支持使用图像/环境变量:MYSQL_DATABASE

我在 docker-compose 中使用它

我可以寻求帮助吗?

最佳答案

因此编写您自己的 Dockerfile 并复制将在镜像上创建新数据库的 sql 脚本。像下面这样的东西

FROM mysql

ENV MYSQL_DATABASE=test \
MYSQL_ROOT_PASSWORD=password \

ADD yourscript.sql /docker-entrypoint-initdb.d/

EXPOSE 3306

所以/docker-entrypoint-initdb.d/中的所有scipts都会在容器启动时执行。实际上,您的第二个数据库创建脚本将放在 yourscript.sql 中,它将在容器启动时执行

您可以使用命令构建图像docker build -t masterdanny/percona:5.7.24-centos

然后在您的 docker-compose 文件中使用该新图像

干杯。如果您有任何问题,请告诉我。

关于mysql docker image 支持在启动时创建多个数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53837749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com