首页 > 解决方案 > 我可以在 Docker Compose 中创建相应的副本吗?

问题描述

我正在构建一个使用许多 Celery 工作人员(处理队列中的任务)的应用程序。工作人员应该针对 MySQL 数据库运行一些脚本,该数据库也是容器化的。具体来说,每个工作人员应该在不同的MySQL 容器上运行其脚本。我想知道的是我是否可以创建一个干净的 MySQL 容器的副本,并使其工作副本 1 仅尝试针对 MySQL 副本 1 运行脚本等。

我当前的概念验证从工作人员内部启动了一个新的 MySQL 容器,但这是一场性能噩梦,并且具有安全隐患。

标签: dockerdocker-composereplication

解决方案


简单的答案,是的,您可以创建干净的 mysql 容器的副本,只需相应地命名服务即可。

需要注意的是,您不能与另一个 mysql 容器共享/访问数据。如果您在单个 mysql 容器中使用不同的数据库会更好,这将更加性能友好且易于备份。

要在不同的 mysql 容器之间共享数据,您只需要设置 mysql 主从。


推荐阅读