Node.js: Configurer les clés SSH

Cette documentation fait partie du guide Déployer avec GitHub Actions. Consultez le guide complet ici : Découvrez comment déployer votre code Node.js avec GitHub Actions.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution Node.js cloud prête à l'emploi qui offre de nombreux avantages, notamment :

  • Déployez votre application en quelques secondes avec un simple git push.
  • Utilisez votre propre nom de domaine et profitez de la configuration automatique des certificats HTTPS pour une sécurité renforcée.
  • Bénéficiez de la sauvegarde automatique, des mises à jour en un clic, ainsi que d'une tarification simple, transparente et prévisible.
  • Profitez d'une performance optimale et d'une sécurité renforcée grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il suffit de 5 minutes pour essayer la solution Node.js cloud hosting de Stackhero !

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. Cette étape est essentielle 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 repository de votre projet. Cliquez sur Settings, puis sélectionnez Environments. Choisissez New environment.

Configuration des environnements GitHubConfiguration des environnements GitHub

Saisissez "production" pour le Name et validez.

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 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

Saisissez STACKHERO_ENDPOINT comme Name et collez l'endpoint de votre service Node.js dans le champ Value. Vous trouverez cet endpoint sur 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