默认部署MongoDB连接



我将保持简短。我已经在Linux服务器上部署了安装程序。

如果我在命令行上运行"dpd",它会正确启动,连接到数据库(位于/data/db)。它显示了我的数据,并完全按照我的期望运行。

我已经为PM2创建了一个启动js文件。

推荐的部署文档行是:

var server = deployd({
   port: process.env.PORT || 5000,
   env: 'production',
   db: {
       host: 'my.production.mongo.host',
       port: 27105,
       name: 'my-db',
       credentials: {
           username: 'username',
           password: 'password'
       }
    }
});

我不知道这些信息,因为我一直在使用默认值。我希望用这一行来代替:

var server = deployd();

当PM2重启时,这实际上启动正确部署,但不连接到MongoDB。有人知道我应该在里面放什么信息吗或者至少我应该怎么找到它?我尝试了一些变化,如主机:'localhost',端口:27105,名称:'db',没有凭据,但我似乎无法让它工作。是否需要输入默认凭据?

编辑:默认值是…

{
    port: 2403,
    db: {port: 27017, host: '127.0.0.1', name: 'deployd'}
}

使用时不会中断,但仍然不连接到MongoDB,导致我认为这不是凭据的问题。

为了解决这个问题,我用两个命令创建了一个bash脚本:

cd /my/path;
dpd -e "production";

然后我将其添加到PM2中。这是一个变通办法,不是真正的解决方案,但我想它可以。

为了方便,dpd命令为您处理启动mongodb实例。然而,这应该只用于开发和快速原型。

对于生产目的,最好是通过mongod --dbpath <path> --forkservice mongodb start单独启动mongodb作为服务,并使用自己的启动脚本连接到它。

最新更新