Node.js: Configurar as chaves SSH

Esta documentação faz parte do guia Implementar com GitHub Actions. Consulte o guia completo aqui: Saiba como implementar o seu código Node.js utilizando GitHub Actions.

👋 Bem-vindo à documentação do Stackhero!

A Stackhero oferece uma solução Node.js cloud pronta a usar que proporciona uma série de benefícios, incluindo:

  • Implemente a sua aplicação em segundos com um simples git push.
  • Utilize o seu próprio nome de domínio e beneficie da configuração automática de certificados HTTPS para uma segurança reforçada.
  • Desfrute de tranquilidade com backups automáticos, atualizações com um clique, e preços simples, transparentes e previsíveis.
  • Obtenha desempenho ótimo e segurança robusta graças a uma VM privada e dedicada.

Poupe tempo e simplifique a sua vida: só leva 5 minutos para experimentar a solução de hospedagem cloud Node.js da Stackhero!

As chaves SSH permitem que o GitHub Actions se ligue de forma segura ao seu serviço Node.js durante o deployment do seu código. Este é um passo fundamental para proteger os seus serviços Stackhero.

No seu computador, pode gerar novas chaves SSH com:

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

Para visualizar a chave pública que acabou de criar, execute:

cat /tmp/ssh_key.pub

De seguida, no seu dashboard Stackhero, selecione o seu serviço Node.js de produção e clique no botão Configure.

Obter definições do serviçoObter definições do serviço

Continue com estes passos:

  1. Em SSH public keys, clique em Add a public key.
  2. Em Description, introduza GitHub Action.
  3. Em Key, cole a chave pública que copiou anteriormente.

Obter definições do serviçoObter definições do serviço

Agora, aceda ao GitHub e abra o repositório do seu projeto. Clique em Settings e depois selecione Environments. Escolha New environment.

Configurar ambientes no GitHubConfigurar ambientes no GitHub

Introduza "production" em Name e confirme.

Definir o ambienteDefinir o ambiente

Clique no botão No restriction e depois escolha Selected branches and tags.

Definir restrições do ambienteDefinir restrições do ambiente

Agora clique em Add deployment branch or tag rule, introduza "production" no campo Name pattern e clique em Add rule.

Definir ramo do ambienteDefinir ramo do ambiente

Definir ramo do ambienteDefinir ramo do ambiente

Em Environment secrets, clique em Add secret.

Adicionar secretAdicionar secret

Para obter a chave privada que gerou, execute:

cat /tmp/ssh_key

No GitHub, utilize STACKHERO_SSH_PRIVATE_KEY como Name e cole a sua chave privada no campo Value.

Definir o secret da chave privada SSHDefinir o secret da chave privada SSH

Depois, em Environment variables, clique em Add variable.

Definir variáveisDefinir variáveis

Introduza STACKHERO_ENDPOINT como Name e cole o endpoint do seu serviço Node.js no campo Value. Pode encontrar este endpoint no seu dashboard Stackhero.

Definir a variável endpointDefinir a variável endpoint

Se definiu um domínio personalizado para o seu serviço, utilize o seu domínio personalizado em vez de <XXXXXX>.stackhero-network.com.

Por motivos de segurança, é aconselhável remover as chaves SSH do seu computador depois de as configurar no Stackhero e no GitHub:

rm /tmp/ssh_key /tmp/ssh_key.pub