Tengo un problema con la implementación en Heroku.
Justo antes server.listen(process.env.PORT || 3000)
console.log(process.env.PORT)
me da 3000
pero console.log(JSON.stringify(process.env))
me da el objeto completo con PORT configurado correctamente por Heroku (usa un puerto diferente cada vez)
Mi dinero está en el proceso de minificación que cambia el nombre de la variable process.env.PORT
a algo como 3e3
y luego el puerto no se lee correctamente por alguna razón.
(Cuando subo una compilación de desarrollo a heroku, todo funciona)
¿Alguna idea de cómo puedo deshabilitar la minificación del servidor en producción?
Bien, investigué un poco más y encontré esto en RAZZLE-README.md
Las variables de entorno se incrustan durante el tiempo de compilación. Puede leerlos en tiempo de ejecución solo porque, de forma predeterminada, los exportamos con
webpack.DefinePlugin
.
por lo tanto, process.env.PORT se establece en el momento de la compilación. esto no funcionará con Heroku ya que necesita configurarlo por sí mismo. ¿Qué puedo hacer aquí?
¡Resuelto! :)
Encontré esta pequeña belleza: https://www.npmjs.com/package/razzle-heroku
¡Funciona de maravilla! 🥇
Y ya estaba empezando a considerar abandonar el razzle y rodar el mío...
Para cualquiera que venga aquí, hay opciones para esto en el nuevo razzle que saldrá pronto.
Comentario más útil
¡Resuelto! :)
Encontré esta pequeña belleza: https://www.npmjs.com/package/razzle-heroku
¡Funciona de maravilla! 🥇
Y ya estaba empezando a considerar abandonar el razzle y rodar el mío...