如何在具有多个Docker容器的设置中备份MongoDB?

2024-09-28 22:37:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个分为多个Docker容器的应用程序:

  • 容器1包含MongoDB数据库
  • 容器2包含一个python脚本,该脚本每天执行一些操作,并使用pymongo将结果存储在容器1的MongoDB中。你知道吗

在使用Docker之前,也就是说,将MongoDB和python应用程序放在同一台机器上,我可以在每日脚本完成后立即使用mongoexport来备份我的数据库。但是,在Docker安装程序中,我不能在容器2中使用mongoexport,因为没有安装MongoDB,即命令未知。你知道吗

在我看来,唯一的选择是在容器1中使用cronjob,运行一个在预设时间执行备份的脚本。 但是,我更喜欢容器2触发备份的解决方案,因为日常脚本的运行时可能会有很大的不同。你知道吗

提前感谢您的建议!你知道吗


Tags: docker命令脚本机器数据库应用程序mongodb时间
1条回答
网友
1楼 · 发布于 2024-09-28 22:37:23

您可以从Docker2表单here下载mongodb二进制文件。这样你就可以摆脱the command is unknown

您可以使用mongoexport从运行在container 1上的mongodb导出mongodb集合,或者使用mongodumpcontainer 2使用 host port选项获取dump。你知道吗

注意:mongoexport不从集合导出索引。你知道吗

相关问题 更多 >