Развертывание приложения React на Heroku - PullRequest
0 голосов
/ 19 сентября 2018

Я занимаюсь разработкой приложения React.Я нахожусь в тот момент, когда я должен развернуть свое приложение на Heroku.Я создал приложение из шаблонной реагирующей рогатки.Чтобы иметь возможность запускать приложение на сайте сервера, я определил Procfile для запуска сборки на стороне сервера, и скрипт сборки выглядит следующим образом:

web: npm run build

К сожалению, в конце процесса развертывания я получаю сообщение об ошибке:

Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch

Благодаря этому я понял, что я запускаю его на неправильном порту, поэтому я обновилdistServer.js файл и теперь он выглядит так:

import {chalkProcessing} from './chalkConfig';

/* eslint-disable no-console */

console.log(chalkProcessing('Opening production build...'));

// Run Browsersync
browserSync({
  port: process.env.PORT || 4000,
  ui: {
    port: 4001
  },
  server: {
    baseDir: 'dist'
  },

  files: [
    'src/*.html'
  ],

  middleware: [historyApiFallback()]
});

И проблема все еще возникает.Мне удалось запустить сайт только один раз, но я не знаю, какие обстоятельства привели меня к успеху.Я не могу воспроизвести способ запуска приложения на Heroku.Кто-нибудь может мне помочь?

Кроме того, вот сценарии, определенные в package.json:

"scripts": {
    "preinstall": "node tools/nodeVersionCheck.js",
    "remove-demo": "babel-node tools/removeDemo.js",
    "start-message": "babel-node tools/startMessage.js",
    "prestart": "npm run start-message",
    "start": "concurrently -k -r -s first \"npm run test:watch\" \"npm run open:src\" \"npm run lint:watch\"",
    "open:src": "babel-node tools/srcServer.js",
    "open:dist": "babel-node tools/distServer.js",
    "lint": "esw webpack.config.* src tools --color",
    "lint:watch": "npm run lint -- --watch",
    "clean-dist": "npm run remove-dist && mkdir dist",
    "remove-dist": "rimraf ./dist",
    "prebuild": "npm run clean-dist",
    "build": "babel-node tools/build.js && npm run open:dist",
    "test": "jest",
    "test:CI": "babel-node tools/testCi.js",
    "test:cover": "npm run test -- --coverage ",
    "test:cover:CI": "npm run test:CI -- --coverage && cat ./coverage/lcov.info | node_modules/coveralls/bin/coveralls.js",
    "test:watch": "jest --watch",
    "open:cover": "npm run test:cover && opn ./coverage/lcov-report/index.html",
    "analyze-bundle": "babel-node ./tools/analyzeBundle.js"
  }

РЕДАКТИРОВАТЬ:

Я изменилсяпорт также для пользовательского интерфейса, как в этом фрагменте:

  port: 4000,
  ui: {
    port: process.env.PORT || 4001
  }

, и это также не работает.У кого-нибудь есть идеи, как решить мою проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...