如何在 Linux 服务器上部署 Node.js 和 MongoDB 应用程序

How To Deploy a Node.js and MongoDB Application on Linux server

我正在开发一个应用程序,我想将它部署到 linux 服务器上。我已经将我的本地文件复制到服务器。我读过这篇文章,但对我来说不是很清楚 https://github.com/keystonejs/keystone/issues/4687

我已经做过的事情

远程服务器安装了适当版本的 Node.js 和 npm(最好与您在开发中测试的版本相同)

将最新版本的应用程序源签出(或复制)到远程服务器。

运行 npm install(或 npm install --production 如果这将是生产环境)在应用程序源目录的顶层。

但是当我在服务器上 运行 npm start 时它给了我错误

Mongoose 连接“错误”事件触发: { MongoError:第一次连接时无法连接到服务器 [localhost:27017]

我的设置

keystone.init({
    'name': 'Test',
    'brand': 'Test',
    'sass': 'public',
    'static': 'public',
    'favicon': 'public/favicon.ico',
    'auto update': true,
    'views': 'templates/views',
    'view engine': '.html',
    'custom engine': cons.nunjucks,
    'mongo': 'mongodb://localhost/test',
    'auto update': true,
    'emails': 'templates/email',
    'session': true,
    'auth': true,
    'user model': 'User',
});

我需要在服务器 mongo 上配置更多设置吗?

Mongoose connection "error" event fired with: { MongoError: failed to connect to server [localhost:27017] on first connect

以上错误表示您的mongodb服务没有启动。

要启用并启动 mongodb 服务,您可以 运行 以下命令:

1.启用mongodb服务

sudo systemctl enable mongod.service

2。启动mongodb服务

sudo service mongod start

3。启动你的 nodejs 应用程序

npm start