MariaDB/MySQL docker映像不会填充init脚本中的数据库是因为在启动容器时,官方的MariaDB/MySQL docker映像会检查指定的目录中是否存在数据文件,如果存在则直接使用已有的数据文件,而不会执行init脚本中的数据库填充操作。
这种设计有以下几个优势:
然而,如果需要在启动容器时执行数据库填充操作,可以通过以下步骤实现:
以下是一个示例的Dockerfile内容:
FROM mariadb:latest
COPY init.sql /docker-entrypoint-initdb.d/
在上述示例中,假设init.sql是包含数据库填充操作的脚本文件,通过COPY命令将该文件复制到容器中的/docker-entrypoint-initdb.d/目录下。然后,当容器启动时,官方的MariaDB/MySQL docker映像会自动执行该目录下的脚本文件。
需要注意的是,以上方法适用于官方的MariaDB/MySQL docker映像,对于其他第三方或自定义的docker映像,可能存在不同的实现方式。
推荐的腾讯云相关产品:
领取专属 10元无门槛券
手把手带您无忧上云