Node.js: Configurer les clés SSH

Cette documentation fait partie du guide Déployer avec GitHub Actions. Consultez le guide complet ici : Apprenez comment déployer votre code Node.js à l'aide de GitHub Actions.

👋 Bienvenue dans la documentation Stackhero !

Stackhero offre un environnement Node.js cloud prêt à l’emploi, conçu pour accélérer vos déploiements :

  • Déployez en production en quelques secondes avec un simple git push. Aucun outil supplémentaire ou configuration manuelle n’est requis.
  • Utilisez votre propre domaine et profitez de certificats HTTPS automatiques, assurant la sécurité de votre application sans configuration additionnelle.
  • Sauvegardes automatiques, mises à jour en un clic et tarification prévisible : concentrez-vous sur vos fonctionnalités, Stackhero gère l’infrastructure pour vous.
  • Infrastructure privée et dédiée pour une performance constante et une sécurité accrue.

Gagnez du temps et réduisez la charge opérationnelle : votre application peut être en ligne sur le Node.js cloud hosting de Stackhero en quelques minutes seulement.

Les clés SSH permettent à GitHub Actions de se connecter de façon sécurisée à votre service Node.js lors du déploiement de votre code. Il s'agit d'une étape cruciale pour protéger vos services Stackhero.

Sur votre ordinateur, vous pouvez générer de nouvelles clés SSH avec :

ssh-keygen -C "" -f /tmp/ssh_key -N ""

Pour afficher la clé publique que vous venez de créer, exécutez :

cat /tmp/ssh_key.pub

Ensuite, dans votre tableau de bord Stackhero, sélectionnez votre service Node.js de production et cliquez sur le bouton Configurer.

Accéder aux paramètres du serviceAccéder aux paramètres du service

Poursuivez avec ces étapes :

  1. Dans Clés publiques SSH, cliquez sur Ajouter une clé publique.
  2. Pour Description, saisissez GitHub Action.
  3. Pour Clé, collez la clé publique copiée précédemment.

Accéder aux paramètres du serviceAccéder aux paramètres du service

Passez maintenant sur GitHub et ouvrez le dépôt de votre projet. Cliquez sur Settings, puis sélectionnez Environments. Choisissez New environment.

Configuration des environnements GitHubConfiguration des environnements GitHub

Entrez « production » pour le Name et confirmez.

Définir l'environnementDéfinir l'environnement

Cliquez sur le bouton No restriction, puis choisissez Selected branches and tags.

Définir les restrictions d'environnementDéfinir les restrictions d'environnement

Cliquez ensuite sur Add deployment branch or tag rule, saisissez « production » dans le champ Name pattern, puis cliquez sur Add rule.

Définir la branche d'environnementDéfinir la branche d'environnement

Définir la branche d'environnementDéfinir la branche d'environnement

Dans Environment secrets, cliquez sur Add secret.

Ajouter un secretAjouter un secret

Pour récupérer la clé privée que vous avez générée, exécutez :

cat /tmp/ssh_key

Sur GitHub, utilisez STACKHERO_SSH_PRIVATE_KEY comme Name et collez votre clé privée dans le champ Value.

Définir le secret de la clé privée SSHDéfinir le secret de la clé privée SSH

Ensuite, dans Environment variables, cliquez sur Add variable.

Définir les variablesDéfinir les variables

Entrez STACKHERO_ENDPOINT comme Name et collez l'endpoint de votre service Node.js dans le champ Value. Vous trouverez cet endpoint dans votre tableau de bord Stackhero.

Définir la variable endpointDéfinir la variable endpoint

Si vous avez configuré un nom de domaine personnalisé pour votre service, utilisez votre domaine personnalisé à la place de <XXXXXX>.stackhero-network.com.

Pour des raisons de sécurité, il est recommandé de supprimer les clés SSH de votre ordinateur une fois qu'elles ont été ajoutées sur Stackhero et GitHub :

rm /tmp/ssh_key /tmp/ssh_key.pub