我想制作一个 mysql docker 镜像,在构建过程中导入一些初始数据。
之后,当在容器中使用时,容器将保持无状态,这意味着容器运行时添加的数据不会在销毁/再次启动容器后继续存在,但初始数据仍然存在。
这可能吗?我将如何设置这样的图像和容器?
最佳答案
我建议根据需要在 SQL 脚本中创建 MySQL 表,或者直接在本地 MySQL 实例中创建 MySQL 表并将其导出到文件。
有了这个文件,创建一个构建在 MySQL 容器上的 Dockerfile。添加另一个入口点脚本,将 SQL 脚本注入(inject)数据库。
您没有写任何有关安装卷的内容。您可能需要数据库的数据卷或配置 MySQL 以将所有内容保留在内存中。
为了增加“无状态性”,您可能还想删除 SQL 脚本中的所有表。
关于mysql - 如何制作无状态mysql docker容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55448905/