Развертывание MERN на героку вызовет неожиданные ошибки - PullRequest
0 голосов
/ 14 мая 2018

У меня есть проект стека MERN - он основан на NodeJS (Express), ReactJS и использует mLab для БД, веб-пакет для обслуживания ресурсов.

Сначала я просто использую ReactJS, через некоторое время ядобавьте backend для api.

Когда я использую только ReactJS, развертывание на heroku было очень успешным.Но когда я смешиваю NodeJS & ReactJS & Webpack & mLab, развертывание на heroku иногда оказывалось успешным и заканчивалось неудачей.

Поэтому мне нужно развернуть несколько раз.

Что со мной?

1 Ответ

0 голосов
/ 14 мая 2018

Во-первых, у вас есть сценарии, установленные в вашем внешнем package.json? Мой выглядит примерно так

  "engines": {
    "node": "9.9.0",
    "yarn": "1.5.1"
 },
 "dependencies": {
    "bcrypt": "^2.0.1",
    "body-parser": "^1.18.2",
    "cors": "^2.8.4",
    "dotenv": "^5.0.1",
    "express": "^4.16.3",
    "express-jwt": "^5.3.1",
    "helmet": "^3.12.0",
    "jsonwebtoken": "^8.2.1",
    "mongodb": "^3.0.7",
    "mongoose": "^5.0.17",
    "passport": "^0.4.0",
    "passport-facebook": "^2.1.1",
    "passport-google-oauth": "^1.0.0",
    "passport-local": "^1.0.0"
  },
   "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "node backend-card-game/server.js",
        "heroku-postbuild": "cd card-game && yarn install && yarn build"
    },
...

Во-вторых, ваш бэкэнд указывает на правильный URL-адрес БД? в терминале типа

heroku config:get MONGODB_URI

убедитесь, что ваш бэкэнд указывает на этот URL, в противном случае, если ни одна из этих справок не появится, мне нужно будет увидеть сообщение об ошибке.

...