Node.js

Esta guía incluye ejemplos de cómo configurar las siguientes aplicaciones Node.js para desplegarlas en los servicios de Alojamiento de Aplicaciones de Kinsta desde un repositorio de GitHub:

Requisitos Previos

  • Las plantillas de inicio rápido de Kinsta se almacenan y gestionan en GitHub; por lo tanto, necesitas una cuenta de GitHub para acceder a ellas.
  • Necesitas crear una cuenta MyKinsta para desplegar la aplicación.

Node.js

  1. Accede a GitHub y crea un nuevo repositorio a partir de esta plantilla (Utilizar esta plantilla > Crear un nuevo repositorio): Kinsta – Hello World – Node.js.
  2. En MyKinsta, haz clic en Aplicaciones > Añadir aplicación > selecciona GitHub, haz clic en Conectar proveedor git > Autorizar, e inicia sesión en tu cuenta de GitHub.
  3. Elige el repositorio Hello World – Node.js y una Ubicación para el centro de datos. Deja el resto de ajustes por defecto y haz clic en Continuar en cada paso.
  4. En el paso Resumen, haz clic en Desplegar ahora.

Durante el despliegue, Kinsta detecta automáticamente el comando de Inicio para el proceso web e instala las dependencias definidas en tu archivo package.json. La aplicación estará disponible en cuanto finalice el despliegue, y la página de Bienvenida de Kinsta se cargará en la URL de tu aplicación.

Página de bienvenida de Kinsta tras el despliegue satisfactorio de Node.js.
Página de bienvenida de Kinsta tras el despliegue satisfactorio de Node.js.

¿Prefieres ver la versión en vídeo?

Configuración del Servidor Web

Puerto

Kinsta establece automáticamente la variable de entorno PORT. No es necesario que la definas tú mismo ni que la codifiques en la aplicación. Utiliza process.env.PORT en tu código cuando te refieras al puerto del servidor.

app.listen(process.env.PORT, () => {
console.log(`Hello World Application is running on port ${process.env.PORT}`)
})

Comando de Inicio

Cuando despliegas una aplicación, Kinsta crea automáticamente un proceso web con npm start como comando de Inicio. Asegúrate de utilizar este comando para ejecutar tu servidor. Si quieres utilizar un comando diferente, tienes que modificar el proceso web en MyKinsta.

"scripts": {
"start": "node server.js"
},

Variables de Entorno

Por defecto, la variable de entorno NODE_ENVno está establecida en production para las aplicaciones Node.js; debes añadir esta variable de entorno manualmente.

Ciclo de Vida del Despliegue

Cada vez que se inicia un despliegue (mediante la creación de una aplicación o el redespliegue debido a un commit entrante), se ejecuta el comando npm build, seguido del comando npm start.

Aplicación Node.js con un Archivo Dockerfile

  1. Accede a GitHub y crea un nuevo repositorio a partir de esta plantilla (Utilizar esta plantilla > Crear un nuevo repositorio): Kinsta – Hello World – Dockerfile – Node.js.
  2. En MyKinsta, haz clic en Aplicaciones > Añadir aplicación > selecciona GitHub, haz clic en Conectar proveedor git > Autorizar, e inicia sesión en tu cuenta de GitHub.
  3. Elige el repositorio Hello World – Dockerfile – Node.js y una Ubicación del centro de datos, deja el resto de ajustes por defecto y haz clic en Continuar.
  4. En el paso Entorno de construcción, selecciona Utilizar Dockerfile para configurar una imagen contenedora y haz clic en Continuar > el resto de ajustes pueden permanecer por defecto, haz clic en Continuar > Desplegar ahora.

El Dockerfile debe contener el comando de Inicio en una línea CMD o en una instrucción ENTRYPOINT. La aplicación estará disponible en cuanto finalice el despliegue, y se cargará una página Hello World en la URL de tu aplicación.

Página Hello World de Node.js con Dockerfile tras una instalación correcta.
Página Hello World de Node.js con Dockerfile tras una instalación correcta.

Ciclo de Vida del Despliegue

Cuando creas la aplicación, Kinsta crea un proceso a partir de la instrucción CMD del Dockerfile:

CMD ["npm", "run", "start"]

Si cambias este comando en el repositorio después de desplegar la aplicación, el proceso no se actualiza automáticamente en MyKinsta, por lo que también debes editar el comando de Inicio en los Procesos de tu aplicación.

Aplicación Node.js Para Enviar Emails

Este es un ejemplo de cómo configurar una aplicación Node.js para enviar correos electrónicos a través de SendGrid en los servicios de Alojamiento de Aplicaciones de Kinsta, desplegada desde un repositorio de GitHub.

Kinsta no soporta de forma nativa el envío de correos electrónicos desde servidores. El envío de correos electrónicos a través de proveedores de correo saliente especializados, como SendGrid o Mailchimp, ofrece más flexibilidad y mayores tasas de éxito para los correos electrónicos transaccionales y de campaña.

  1. Accede a GitHub y crea un nuevo repositorio a partir de esta plantilla (Usar esta plantilla > Crear un nuevo repositorio): Kinsta – Hello World – Envío de Emails con Node.js.
  2. En MyKinsta, haz clic en Aplicaciones > Añadir aplicación > selecciona GitHub, haz clic en Conectar proveedor git > Autorizar, e inicia sesión en tu cuenta de GitHub.
  3. Elige el repositorio Hello World – Email Sending With Node.js y una Ubicación del centro de datos. En Variables de entorno, añade lo siguiente
    • SENDGRID_API_KEY: La clave API de SendGrid.
    • TEST_EMAIL_TO_ADDRESS: La dirección a la que deseas enviar el correo electrónico de prueba.
    • TEST_EMAIL_FROM_ADDRESS: La dirección desde la que deseas enviar el correo electrónico de prueba.
    • TEST_ENDPOINT: El endpoint que deseas utilizar como desencadenante para enviar el correo electrónico de prueba. Utiliza una cadena aleatoria de al menos 8 caracteres.
  4. Deja los demás ajustes por defecto y haz clic en Continuar en cada paso. En el paso Resumen, haz clic en Desplegar ahora.

La aplicación estará disponible en cuanto finalice el despliegue, y se cargará una página Hello World en la URL de tu aplicación.

Correo electrónico de Node.js enviando la página Hello World tras una instalación correcta.
Correo electrónico de Node.js enviando la página Hello World tras una instalación correcta.

Activar un Correo Electrónico

Este proyecto no requiere una fase de construcción. El comando de Inicio ejecuta node server.js,, que inicia un servidor Express con dos endpoints:

  • /: Una página sencilla que devuelve el mensaje Hello World
  • /${TEST_ENDPOINT}: Una página que activa un correo electrónico de prueba.

Para activar un correo electrónico, busca la URL de tu despliegue en la página Despliegues, añade tu endpoint de prueba a esta URL y visita la página. Por ejemplo, si tu TEST_ENDPOINT está configurado en o34nifnodhni4of y tu último despliegue está en https://example.kinsta.app, puedes activar un correo electrónico de prueba desde https://example.kinsta.app/o34nifnodhni4of en tu navegador.

Si el correo de prueba se envía correctamente, aparecerá el mensaje «Correo electrónico enviado».

Mensaje de correo electrónico enviado de Node.js.
Mensaje de correo electrónico enviado de Node.js.

Si lo verificas en SendGrid, también obtendrás un mensaje de éxito.

Prueba de correo electrónico recibido en SendGrid.
Prueba de correo electrónico recibido en SendGrid.
¿Este artículo te ha resultado útil?