如何在docker中的mongod之后运行mongorestore

时间:2015-06-29 14:22:10

标签: bash shell docker dockerfile

我正在尝试使用docker设置一个mongodb-server,让它从网上下载一个转储并用该信息填充它。我的问题是我可以让它运行并填充数据库,但在完成之后,它就会关闭。

这就是我解决问题的方法:

sudo -u mongodb /usr/bin/mongod --config $conf $args & mongorestore dump

这里的问题是,如果 mongod 没有运行,我就无法运行 mongorestore ,但如果我用mongod &启动mongod,那么容器将在 mongorestore 运行完毕后关闭。

在我的 Dockerfile 中,我正在执行这些命令 CMD ["/etc/mongod/mongostart.sh"]

1 个答案:

答案 0 :(得分:4)

启动你的mongod容器

docker run -d --name mymongod ... mongo ...

为mongorestore启动第二个容器,将其链接到第一个容器:

docker run --link mymongod:db ... mongo mongorestore -h db ...

mongorestore将通过docker根据指定的mymongod创建的别名db连接到--link容器