Node.js
Ce guide comprend des exemples sur la façon de configurer les applications Node.js suivantes pour les déployer sur les services d’hébergement d’applications de Kinsta à partir d’un dépôt GitHub :
Pré-requis
- Les modèles de démarrage rapide de Kinsta sont stockés et gérés dans GitHub ; par conséquent, vous avez besoin d’un compte GitHub pour y accéder.
- Vous devez créer un compte MyKinsta pour déployer l’application.
Node.js
- Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – Node.js.
- Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- Choisissez le dépôt Hello World – Node.js et l’emplacement du centre de données. Laissez tous les autres réglages par défaut et cliquez sur Continuer à chaque étape.
- Dans l’étape Résumé, cliquez sur Déployer maintenant.
Pendant le déploiement, Kinsta détecte automatiquement la commande de démarrage pour le processus web et installe les dépendances définies dans votre fichier package.json. L’application est disponible dès que le déploiement est terminé, et la page d’accueil Kinsta se charge à l’URL de votre application.
Vous préférez regarder la version vidéo ?
Configuration du serveur web
Port
Kinsta définit automatiquement la variable d’environnement PORT
. Vous n’avez pas besoin de la définir vous-même ou de la coder en dur dans l’application. Utilisez process.env.PORT
dans votre code lorsque vous faites référence au port du serveur.
app.listen(process.env.PORT, () => {
console.log(`Hello World Application is running on port ${process.env.PORT}`)
})
Commande de démarrage
Lorsque vous déployez une application, Kinsta crée automatiquement un processus web avec npm start
comme commande de démarrage. Assurez-vous d’utiliser cette commande pour lancer votre serveur. Si vous souhaitez utiliser une autre commande, vous devez modifier le processus web dans MyKinsta.
"scripts": {
"start": "node server.js"
},
Variables d’environnement
Par défaut, la variable d’environnement NODE_ENV
n’ est pas définie sur production
pour les applications Node.js ; vous devez ajouter cette variable d’environnement manuellement.
Cycle de vie du déploiement
Chaque fois qu’un déploiement est initié (par la création d’une application ou un redéploiement suite à un commit entrant), la commande npm build
est exécutée, suivie de la commande npm start
.
Application Node.js avec un fichier Docker
- Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – Dockerfile – Node.js.
- Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- Choisissez le dépôt Hello World – Dockerfile – Node.js et l’emplacement du centre de données, laissez tous les autres réglages par défaut et cliquez sur Continuer.
- A l’étape Construire l’environnement, sélectionnez Utiliser Dockerfile pour configurer l’image du conteneur et cliquez sur Continuer > tous les autres rélages peuvent rester par défaut, cliquez sur Continuer > Deployer maintenant.
Le fichier Docker doit contenir la commande de démarrage soit dans une ligne CMD
, soit dans une instruction ENTRYPOINT
. L’application est disponible dès que le déploiement est terminé et qu’une page Hello World est chargée à l’URL de votre application.
Cycle de déploiement
Lorsque vous créez l’application, Kinsta crée un processus à partir de l’instruction CMD
dans le fichier Docker :
CMD ["npm", "run", "start"]
Si vous modifiez cette commande dans le référentiel après avoir déployé l’application, le processus n’est pas automatiquement mis à jour dans MyKinsta, vous devez donc également modifier la commande de démarrage dans les processus de votre application.
Application Node.js pour envoyer des e-mails
Voici un exemple de configuration d’une application Node.js pour envoyer des e-mails via SendGrid sur les services d’hébergement d’applications de Kinsta, déployée à partir d’un dépôt GitHub.
Kinsta ne prend pas nativement en charge les e-mails sortants des serveurs. L’envoi d’e-mails via des fournisseurs d’e-mails sortants spécialisés tels que SendGrid ou Mailchimp offre plus de flexibilité et des taux de réussite plus élevés pour les e-mails transactionnels et de campagne.
- Connectez-vous à GitHub et créez un nouveau dépôt à partir de ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – Email Sending With Node.js.
- Dans MyKinsta, cliquez sur Applications > Ajouter une application > sélectionnez GitHub, cliquez sur Connecter le fournisseur git > Autoriser, et connectez-vous à votre compte GitHub.
- Choisissez le dépôt Hello World – Email Sending With Node.js et un emplacement de centre de données. Dans les variables d’environnement, ajoutez les éléments suivants :
SENDGRID_API_KEY
: La clé API de SendGrid.TEST_EMAIL_TO_ADDRESS
: L’adresse à laquelle vous souhaitez envoyer l’e-mail de test.TEST_EMAIL_FROM_ADDRESS
: L’adresse à partir de laquelle vous souhaitez envoyer l’e-mail de test.TEST_ENDPOINT
: Le point de terminaison que vous souhaitez utiliser comme déclencheur pour l’envoi de l’e-mail de test. Utilisez une chaîne aléatoire d’au moins 8 caractères.
- Laissez tous les autres paramètres par défaut et cliquez sur Continuer à chaque étape. À l’étape Résumé, cliquez sur Déployer maintenant.
L’application est disponible dès que le déploiement est terminé, et une page Hello World se charge à l’URL de votre application.
Déclencher un e-mail
Ce projet ne nécessite pas de phase de construction. La commande de démarrage exécute node server.js,
qui démarre un serveur Express avec deux points de terminaison :
/
: Une page simple qui renvoie le message Hello World/${TEST_ENDPOINT}
: Une page qui déclenche un e-mail de test.
Pour déclencher un e-mail, recherchez l’URL de votre déploiement sur la page Déploiements, ajoutez votre point de terminaison de test à cette URL et visitez la page. Par exemple, si votre TEST_ENDPOINT
est défini sur o34nifnodhni4of
et que votre dernier déploiement se trouve sur https://example.kinsta.app, vous pouvez déclencher un e-mail de test à partir de https://example.kinsta.app/o34nifnodhni4of dans votre navigateur.
Un message Email sent s’affiche si l’envoi de l’e-mail de test est réussi.
Si vous le vérifiez sur SendGrid, vous obtenez également un message de réussite.