Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

393
Views
La aplicación Heroku Node sigue fallando

Tengo una aplicación Express alojada en Heroku. Localmente funciona bien, pero sigue fallando en Heroku. Cada vez que voy a él, aparece la página 'Error de aplicación'.

página de error de la aplicación

Verifiqué dos veces todas las variables de entorno y parecen estar bien.

Los registros de Heroku no ofrecen exactamente mucha ayuda:

 2017-04-16T23:02:49.001768+00:00 heroku[web.1]: State changed from crashed to starting 2017-04-16T23:02:52.072906+00:00 heroku[web.1]: Starting process with command `npm run start` 2017-04-16T23:02:56.042611+00:00 app[web.1]: 2017-04-16T23:02:56.042628+00:00 app[web.1]: > my-app@0.0.1 start /app 2017-04-16T23:02:56.042629+00:00 app[web.1]: > node bin/app 2017-04-16T23:02:56.042630+00:00 app[web.1]: 2017-04-16T23:02:57.200912+00:00 heroku[web.1]: State changed from starting to crashed 2017-04-16T23:02:57.201454+00:00 heroku[web.1]: State changed from crashed to starting 2017-04-16T23:02:57.192198+00:00 heroku[web.1]: Process exited with status 0 2017-04-16T23:03:00.981528+00:00 heroku[web.1]: Starting process with command `npm run start` 2017-04-16T23:03:04.312475+00:00 app[web.1]: 2017-04-16T23:03:04.312489+00:00 app[web.1]: > my-app@0.0.1 start /app 2017-04-16T23:03:04.312490+00:00 app[web.1]: > node bin/app 2017-04-16T23:03:04.312491+00:00 app[web.1]: 2017-04-16T23:03:06.093211+00:00 heroku[web.1]: Process exited with status 0 2017-04-16T23:03:06.112842+00:00 heroku[web.1]: State changed from starting to crashed

Entonces intenté iniciar la aplicación manualmente:

 $ heroku run bash ... $ npm run start

No tengo errores. Estoy usando el administrador de procesos pm2, así que lo revisé para ver si la aplicación se está ejecutando y parece que sí:

 $ node_modules/.bin/pm2 list ...

salida pm2

Pero luego, cuando voy a abrir mi aplicación, aparece la misma página de 'Error de aplicación' que antes.

'reinicio heroku' no ayuda. Simplemente se bloquea de nuevo cada vez.

La única diferencia entre mi entorno local y Heroku (hasta donde puedo decir al menos...) es que localmente tengo un archivo desde el que estoy leyendo una clave privada RSA, y en Heroku esa clave se lee desde el entorno. .

Editar: según lo solicitado, aquí está mi Procfile:

 web: npm run start

¿Algunas ideas?

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Su aplicación debe comenzar a escuchar el puerto definido en el env. Por ejemplo, si tiene una aplicación expressjs, debería verse así:

 const express = require('express') const app = express() const port = process.env.PORT || 3000 app.get('/', (req, res) => res.send("Hello world")) app.listen(port, () => console.log(`Example app listening on port ${port}!`))

Si la aplicación no se vincula al puerto correcto, heroku considerará que la aplicación no está en buen estado y la cerrará.

Debe ver esta línea en los registros, lo que indica que heroku reconoció la aplicación como saludable:

 State changed from starting to up

Tenga en cuenta que esto del puerto es un requisito especial para el proceso web . Los otros procesos en su aplicación no tienen tal requisito.

about 4 years ago · Santiago Trujillo Report

0

Prueba 2 cosas: Cambia tu perfil:

 web: node start.js

Luego, asegúrese de que su proceso web se ejecute al ampliarlo:

 heroku ps:scale web=1

En su computadora en una ventana de terminal, ejecute este comando en su proyecto:

 heroku local web

Simula cómo Heroku ejecuta su aplicación y debería brindarle información de lo que está sucediendo.

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!