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 eine einsatzbereite Node.js Cloud Lösung, die zahlreiche Vorteile bietet, darunter:

  • Deployen Sie Ihre Anwendung in Sekundenschnelle mit einem einfachen git push.
  • Nutzen Sie Ihren eigenen Domainnamen und profitieren Sie von der automatischen Konfiguration von HTTPS-Zertifikaten für erhöhte Sicherheit.
  • Genießen Sie sorgenfreie automatische Backups, Ein-Klick-Updates und eine einfache, transparente und vorhersehbare Preisgestaltung.
  • Erhalten Sie optimale Performance und robuste Sicherheit dank einer privaten und dedizierten VM.

Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Node.js Cloud Hosting Lösung von Stackhero auszuprobieren!

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