首页 > 解决方案 > 无法在数字海洋水滴中启动服务器

问题描述

我正在尝试将我的 MERN 应用程序部署到数字海洋水滴(Ubuntu 20.04 服务器)。

我将我的 GitHub 存储库克隆到服务器。 在此处输入图像描述

现在,当我尝试使用 启动服务器时npm start,出现以下错误。 在此处输入图像描述 代码片段如下:

服务器/配置/db.js

const mongoose = require("mongoose");
const colors = require("colors");

const connectDB = async () => {
  try {
    const conn = await mongoose.connect(process.env.MONGO_URI, {
      useNewUrlParser: true,
      useCreateIndex: true,
      useUnifiedTopology: true,
    });
    console.log(`MongoDB connected: ${conn.connection.host}`.cyan.bold);
  } catch (error) {
    console.error(`Error: ${error.message}`.red.bold.underline);
    process.exit(1);
  }
};
2;
module.exports = connectDB;

但是,在我的本地机器上一切正常。如果 I console.log(process.env.MONGO_URI),我得到字符串。

在液滴中,我尝试执行以下操作:

export MONGO_URI=the_connection_string. 即使那样,我也得到了错误。

我究竟做错了什么?

错误 在此处输入图像描述

标签: deploymentweb-deploymentdigital-ocean

解决方案


我发现了这个问题。我已经放在.env里面了.gitignore。因此.env在我克隆到我的 Digital Ocean 液滴的 github 存储库中不可用。作为解决方案,我.env使用vim. 然后我可以毫无问题地启动服务器。


推荐阅读