[Решено! Как развернуть приложение Node.JS в Heroku, когда Heroku не замечает важные файлы? - PullRequest
0 голосов
/ 24 июня 2019

РЕДАКТИРОВАТЬ С РЕШЕНИЕМ!

Решение было мучительно простым, как только другой показал мне:

-В пакете package.json scripts , добавьте «start:» «node server.js», непосредственно над разделом «test». Сохранить package.json.

-На Heroku добавьте аддон mLab.

- Запустите git add. затем git commit -m "MESSAGE".

Введение

Привет всем!

Каким-то образом я успешно развернул приложение Node.JS в Heroku, но с того времени, около 9 месяцев назад, я чувствовал себя отговоренным от работы с Heroku. Однако теперь я хочу развернуть приложение для удаления новостей в бесплатной версии Heroku. (Давайте не будем обсуждать, какие платформы, подобные Heroku, лучше всего подходят для развертывания.)

Для этого проекта я специально установил пакет сборки Heroku вручную на Node.JS.

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

Благодарю!

Включает

-Body Parser

-Cheerio

-Express & ExBar (экспресс-руль)

-Mongoose

Git Link & Contents

https://github.com/Endarire/GECNewsScraper

This image shows the contents of my GitHub project directory:  There are many files, including package.json.  The files GECNewsScraperServer.js and server.js are the same in contents, but I copied GECNewsScraperServer.js to server.js due to another site saying that Heroku specifically needed a server.js file.  I'm unsure if this is true in our case.

Сообщения об ошибках

ПРИМЕЧАНИЕ. My Git Bash (для 64-битной Windows 10) настроен для развертывания в главной ветви Git для этого проекта.

$ git push heroku master
Enumerating objects: 2979, done.
Counting objects: 100% (2979/2979), done.
Delta compression using up to 8 threads.
Compressing objects: 100% (2857/2857), done.
Writing objects: 100% (2979/2979), 3.66 MiB | 1019.00 KiB/s, done.
Total 2979 (delta 539), reused 3 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> App not compatible with buildpack: https://buildpack-registry.s3.                                                                                                                                  amazonaws.com/buildpacks/heroku/nodejs.tgz
remote:
remote:  !     ERROR: Application not supported by 'heroku/nodejs' buildpack
remote:  !
remote:  !     The 'heroku/nodejs' buildpack is set on this application, but wa
remote:  !     unable to detect a Node.js codebase.
remote:  !
remote:  !     A Node.js app on Heroku requires a 'package.json' at the root of
remote:  !     the directory structure.
remote:  !
remote:  !     If you are trying to deploy a Node.js application, ensure that th                                                                                                                                  is
remote:  !     file is present at the top level directory. This directory has th                                                                                                                                  e
remote:  !     following files:
remote:  !
remote:  !     node_modules/
remote:  !     README.md
remote:  !
remote:  !     If you are trying to deploy an application written in another
remote:  !     language, you need to change the list of buildpacks set on your
remote:  !     Heroku app using the 'heroku buildpacks' command.
remote:  !
remote:  !     For more information, refer to the following documentation:
remote:  !     https://devcenter.heroku.com/articles/buildpacks
remote:  !     https://devcenter.heroku.com/articles/nodejs-support#activation
remote:
remote:
remote:        More info: https://devcenter.heroku.com/articles/buildpacks#detec                                                                                                                                  tion-failure
remote:
remote:  !     Push failed
remote: Verifying deploy...
remote:
remote: !       Push rejected to intense-harbor-83701.
remote:
To https://git.heroku.com/intense-harbor-83701.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/intense-harbor-83701.                                                                                                                                  git'

Содержимое package.json

{
  "name": "mongodb_google_news_scraper",
  "version": "1.0.0",
  "description": "https://www.youtube.com/watch?v=L8M0fHqku6A",
  "main": "server.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Greg Campbell (CampbellGregE@gmail.com)",
  "license": "ISC",
  "dependencies": {
    "axios": "^0.19.0",
    "body-parser": "^1.18.3",
    "cheerio": "^1.0.0-rc.2",
    "express": "^4.16.3",
    "express-handlebars": "^3.0.0",
    "mongoose": "^5.1.6"
  },
  "devDependencies": {},
  "repository": {
    "type": "git",
    "url": "git+https://github.com/Endarire/GECNewsScraper.git"
  },
  "bugs": {
    "url": "https://github.com/Endarire/GECNewsScraper/issues"
  },
  "homepage": "https://github.com/Endarire/GECNewsScraper#readme"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...