Python: Configurare le chiavi SSH

Questa documentazione fa parte della guida Distribuire con GitHub Actions. Consulta la guida completa qui: Come distribuire il proprio codice Python utilizzando GitHub Actions.

👋 Benvenuto nella documentazione di Stackhero!

Stackhero offre una soluzione Python cloud pronta all'uso, progettata per semplificare il processo di deployment:

  • Distribuisci la tua applicazione in produzione in pochi secondi con un semplice git push.
  • Utilizza il tuo nome di dominio, con configurazione automatica del certificato HTTPS per connessioni sicure gestite direttamente da noi.
  • Affidati a backup automatici, aggiornamenti con un clic e prezzi prevedibili, così puoi concentrarti sul tuo codice invece che sulla gestione dell'infrastruttura.
  • Approfitta di elevate prestazioni e sicurezza su un'infrastruttura privata e dedicata. Il tuo ambiente è isolato e protetto.

Risparmia tempo e semplifica il tuo workflow: il tuo codice può essere operativo con il Python cloud hosting di Stackhero in soli 5 minuti.

Le chiavi SSH permettono a GitHub Actions di connettersi in modo sicuro al vostro servizio Python per il deployment del codice. Questo passaggio è fondamentale per la sicurezza dei vostri servizi Stackhero.

Sul vostro computer, potete generare nuove chiavi SSH eseguendo:

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

Per prima cosa, visualizzate la chiave pubblica appena generata:

cat /tmp/ssh_key.pub

Successivamente, nella dashboard Stackhero, selezionate il servizio Python "production" e cliccate sul pulsante "Configure".

Accedere alle impostazioni del servizioAccedere alle impostazioni del servizio

Seguite questi passaggi:

  1. Sotto SSH public keys, cliccate su Add a public key.
  2. Per Description, inserite GitHub Action.
  3. Per Key, incollate la chiave pubblica appena copiata.

Aggiungere la chiave pubblicaAggiungere la chiave pubblica

Andate sulla pagina del vostro progetto GitHub, cliccate su Settings, poi su Environments. Scegliete New environment.

Configurazione degli ambienti GitHubConfigurazione degli ambienti GitHub

Nel campo Name, inserite "production" e confermate.

Impostazione dell'ambienteImpostazione dell'ambiente

Cliccate sul pulsante No restriction e selezionate Selected branches and tags.

Impostazione delle restrizioni dell'ambienteImpostazione delle restrizioni dell'ambiente

Poi cliccate su Add deployment branch or tag rule, inserite "production" nel campo Name pattern e cliccate su Add rule.

Impostazione del branch dell'ambienteImpostazione del branch dell'ambiente Impostazione del branch dell'ambienteImpostazione del branch dell'ambiente

Nella sezione Environment secrets, cliccate su Add secret.

Aggiungere un secretAggiungere un secret

Ora visualizzate la chiave privata generata in precedenza:

cat /tmp/ssh_key

Nella configurazione del secret, usate STACKHERO_SSH_PRIVATE_KEY come Nome e incollate la chiave privata come Valore.

Impostazione del secret della chiave privata SSHImpostazione del secret della chiave privata SSH

Successivamente, nella sezione Environment variables, cliccate su Add variable.

Impostazione delle variabiliImpostazione delle variabili

Inserite STACKHERO_ENDPOINT come Nome e incollate l'endpoint del vostro servizio Python come Valore. Troverete questo endpoint nella dashboard Stackhero.

Impostazione della variabile endpointImpostazione della variabile endpoint

Se avete personalizzato il nome di dominio del vostro servizio, utilizzate la versione personalizzata invece di <XXXXXX>.stackhero-network.com.

Per motivi di sicurezza, è consigliabile eliminare ora le chiavi SSH dal vostro computer, poiché non vi serviranno più:

rm /tmp/ssh_key /tmp/ssh_key.pub