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

我试图设置一个与docker的mongodb服务器,让它从网上下载一个转储,并填充该信息。 我的问题是,我可以让它运行并填充数据库,但完成后,它只是closures。

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

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

这里的问题是,如果mongod没有运行,我不能运行mongorestore ,但是如果我用mongod &启动mongod,那么在mongorestore运行完成后容器将closures。

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

启动你的mongod容器

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

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

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

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