我最近使用 Dokku 在 Ubuntu 服务器上部署了一个应用程序。这是一个带有 Mongodb 数据库的 Node.js 应用程序。
为了让网站正常工作,我需要在数据库中加载 geojson 文件。在我的开发机器上,这是使用 mongoimport 命令从 ubuntu 命令行完成的。我不知道如何在 Dokku 中执行此操作。
我还需要添加一个地理空间索引。这是从我的开发机器上的 mongo 控制台完成的。我也不知道如何在 Dokku 安装上做到这一点。
最佳答案
非常感谢@Jonathan。你帮我解决了这个问题。这是我所做的。
我在本地机器上使用 mongodump
创建数据库的备份文件。它默认为 .bson 文件。
我将该文件上传到我的远程服务器。在远程服务器上,我将 bson 文件放在一个名为“dump”的文件夹中。然后给那个文件夹涂 tar 。我最初出于习惯使用 -z 标志,但 mongo/dokku 不喜欢 gzip。所以我像这样使用没有压缩的 tar:
tar -cvf dump.tar dump
接下来我运行了 dokku mongo import 命令:
$dokku mongo:import mongo_claims < dump.tar
2016-03-05T18:04:17.255+0000 building a list of collections to restore from /tmp/tmp.6S378QKhJR/dump dir
2016-03-05T18:04:17.270+0000 restoring mongo_claims.docs4 from /tmp/tmp.6S378QKhJR/dump/docs4.bson
2016-03-05T18:04:20.729+0000 [############............] mongo_claims.docs4 22.3 MB/44.2 MB (50.3%)
2016-03-05T18:04:22.821+0000 [########################] mongo_claims.docs4 44.2 MB/44.2 MB (100.0%)
2016-03-05T18:04:22.822+0000 no indexes to restore
2016-03-05T18:04:22.897+0000 finished restoring mongo_claims.docs4 (41512 documents)
2016-03-05T18:04:22.897+0000 done
成功了。我的站点立即拥有所有数据。
关于node.js - 在 Dokku 安装上导入并添加索引到 mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35807854/