Node.js: SSH-Schlüssel konfigurieren

Diese Dokumentation ist Teil des Deployment mit GitHub Actions-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Erfahren Sie, wie Sie Ihren Node.js-Code mit GitHub Actions bereitstellen.

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet Ihnen eine einsatzbereite Node.js Cloud Umgebung, die darauf ausgelegt ist, Ihre Entwicklung zu beschleunigen:

  • Deployment in die Produktion in Sekunden mit einem einfachen git push. Keine zusätzlichen Tools oder manuelle Konfiguration erforderlich.
  • Nutzen Sie Ihre eigene Domain und profitieren Sie von automatischen HTTPS-Zertifikaten, damit Ihre Anwendung ohne zusätzlichen Aufwand sicher bleibt.
  • Automatische Backups, One-Click-Updates und planbare Preise ermöglichen es Ihnen, sich auf die Entwicklung neuer Features zu konzentrieren – Stackhero übernimmt das Infrastrukturmanagement für Sie.
  • Basierend auf privater, dedizierter Infrastruktur für konstante Performance und hohe Sicherheit.

Sparen Sie Zeit und reduzieren Sie Ihren Betriebsaufwand: Ihre Anwendung läuft auf dem Node.js Cloud Hosting von Stackhero in nur wenigen Minuten.

SSH-Schlüssel ermöglichen es GitHub Actions, sich beim Deployment sicher mit Ihrem Node.js-Service zu verbinden. Dieser Schritt ist entscheidend, um Ihre Stackhero-Services zu schützen.

Auf Ihrem Computer können Sie neue SSH-Schlüssel wie folgt generieren:

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

Um den gerade erstellten öffentlichen Schlüssel anzuzeigen, führen Sie aus:

cat /tmp/ssh_key.pub

Wechseln Sie anschließend in Ihr Stackhero-Dashboard, wählen Sie Ihren Node.js-Produktionsservice aus und klicken Sie auf Configure.

Service-Einstellungen abrufenService-Einstellungen abrufen

Fahren Sie mit diesen Schritten fort:

  1. Unter SSH public keys klicken Sie auf Add a public key.
  2. Geben Sie bei Description GitHub Action ein.
  3. Fügen Sie bei Key den zuvor kopierten öffentlichen Schlüssel ein.

Service-Einstellungen abrufenService-Einstellungen abrufen

Wechseln Sie nun zu GitHub und öffnen Sie Ihr Projekt-Repository. Klicken Sie auf Settings und wählen Sie Environments. Wählen Sie New environment.

GitHub-Umgebungen konfigurierenGitHub-Umgebungen konfigurieren

Geben Sie "production" als Name ein und bestätigen Sie.

Umgebung festlegenUmgebung festlegen

Klicken Sie auf No restriction und wählen Sie dann Selected branches and tags.

Umgebungsrestriktionen festlegenUmgebungsrestriktionen festlegen

Klicken Sie nun auf Add deployment branch or tag rule, geben Sie "production" im Feld Name pattern ein und klicken Sie auf Add rule.

Umgebungs-Branch festlegenUmgebungs-Branch festlegen

Umgebungs-Branch festlegenUmgebungs-Branch festlegen

Unter Environment secrets klicken Sie auf Add secret.

Secret hinzufügenSecret hinzufügen

Um den generierten privaten Schlüssel abzurufen, führen Sie aus:

cat /tmp/ssh_key

Verwenden Sie in GitHub STACKHERO_SSH_PRIVATE_KEY als Name und fügen Sie Ihren privaten Schlüssel in das Feld Value ein.

SSH-Private-Key-Secret festlegenSSH-Private-Key-Secret festlegen

Anschließend klicken Sie unter Environment variables auf Add variable.

Variablen festlegenVariablen festlegen

Geben Sie STACKHERO_ENDPOINT als Name ein und fügen Sie den Endpoint Ihres Node.js-Services in das Feld Value ein. Sie finden diesen Endpoint in Ihrem Stackhero-Dashboard.

Endpoint-Variable festlegenEndpoint-Variable festlegen

Wenn Sie einen eigenen Domainnamen für Ihren Service eingerichtet haben, verwenden Sie Ihre eigene Domain anstelle von <XXXXXX>.stackhero-network.com.

Aus Sicherheitsgründen empfiehlt es sich, die SSH-Schlüssel nach der Einrichtung auf Stackhero und GitHub von Ihrem Computer zu entfernen:

rm /tmp/ssh_key /tmp/ssh_key.pub