Проблемы с развертыванием heroku (приложение стека MERN) - PullRequest
0 голосов
/ 08 марта 2020

Я пытаюсь развернуть приложение стека MERN с помощью heroku, однако при развертывании у меня возникают проблемы.

Я получаю следующую ошибку:

MongoNetworkError не удалось подключиться к серверу [cluster0-shard-00-00-yyfkd.mongodb. net: 27017] при первом подключении [ MongoNetworkError: подключение 5 к cluster0-shard-00-00-yyfkd.mongodb. net: 27017 закрыто]

Я установил необходимые переменные среды, но постоянно получаю ту же ошибку.

Я пытался использовать аддон mlab, описанный в этом видео https://www.youtube.com/watch?v=qXIG8iKO7Fo&t=318s, который не работал.

Я пытался изменить переменную среды DATABASE с:

mongodb+srv::@cluster0-yyfkd.mongodb.net/test?retryWrites=true&w=majority

до:

mongodb + srv: // :@cluster0-yyfkd.mongodb.net/.

Это также не работает.

Я обновил heroku cli до последней версии, которая также не работала.

Я пытался развернуть приложение несколько раз, когда прочитал, что это может работать в определенных случаях (я развернул приложение более 20 раз).

Мое соединение inte rnet исправно.

В настоящее время я использую следующие версии узла и npm:

"engines": {
    "node": "10.15.3",
    "npm": "6.10.3"
  },

Мой пакет. json в настоящее время выглядит следующим образом:

{   "name": "clear",   "version": "1.0.0",   "description": "",   "main": "server.js",   "scripts": {
    "client": "cd client && npm start",
    "server": "nodemon server.js",
    "build": "cd client && npm run build",
    "dev": "concurrently --kill-others-on-fail \"npm run server\" \"npm run client\"",
    "start": "node server.js",
    "heroku-postbuild": "cd client && npm install && npm install --only=dev --no-shrinkwrap && npm run build"   },   "author": "",   "license": "ISC",   "dependencies": {
    "bcryptjs": "^2.4.3",
    "body-parser": "^1.19.0",
    "compression": "^1.7.4",
    "concurrently": "^5.1.0",
    "cookie-parser": "^1.4.4",
    "cors": "^2.8.5",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "express-mongo-sanitize": "^1.3.2",
    "express-rate-limit": "^5.0.0",
    "helmet": "^3.21.1",
    "hpp": "^0.2.2",
    "html-to-text": "^5.1.1",
    "jsonwebtoken": "^8.5.1",
    "mongodb": "^3.5.4",
    "mongoose": "^5.7.1",
    "morgan": "^1.9.1",
    "multer": "^1.4.2",
    "ndb": "^1.1.5",
    "nodemailer": "^6.3.0",
    "npm": "^6.4.1",
    "path": "^0.12.7",
    "pug": "^2.0.4",
    "slugify": "^1.3.5",
    "stripe": "^7.9.1",
    "validator": "^11.1.0",
    "xss-clean": "^0.1.1"   },   "engines": {
    "node": "10.15.3",
    "npm": "6.10.3"   },   "devDependencies": {
    "cross-env": "^7.0.0",
    "concurrently": "^4.0.1"   } }

This код, который я использую на сервере

...