Pular para o conteúdo
18

Como fazer deploy automático no VPS com GitHub Actions?

Fala, galera! Estou aqui com uma dúvida que tem me tirado o sono. Recentemente, comecei a usar o GitHub para gerenciar meu projeto, e agora estou querendo automatizar o deploy no meu VPS. A ideia é que, toda vez que eu fizer um push no repositório, o código seja automaticamente enviado para o servidor. Já pesquisei algumas coisas sobre GitHub Actions, mas a documentação é meio confusa e eu não sei por onde começar. Alguém já passou por isso e pode me dar um passo a passo? Quais são as melhores práticas? Tem algum custo envolvido? Estou usando um VPS da DigitalOcean, se isso ajudar. Agradeço muito a ajuda de vocês!

Priscila Teixeira Priscila Teixeira · Especialista em WooCommerce há 5 horas 335 visualizações 4 respostas

Receba ajuda de nossos Especialistas

Temos um time de especialistas treinado para te ajudar com o que você precisa.

Falar com Especialista

4 Respostas

14
Melhor resposta

Oi! Eu já passei por isso e posso te ajudar. Para fazer o deploy automático no seu VPS com GitHub Actions, você precisa criar um arquivo de workflow no seu repositório. Esse arquivo geralmente fica na pasta `.github/workflows`. Um exemplo básico de configuração seria: `name: Deploy to VPS`. Depois, você define os triggers, como `on: push: branches: [main]`. Em seguida, você adiciona as etapas para conectar ao seu VPS via SSH e rodar os comandos de deploy, como `ssh user@seu-vps 'cd /caminho/do/projeto && git pull && npm install && pm2 restart app'`. Não esquece de configurar as secrets no GitHub com suas credenciais de acesso ao VPS. Isso garante que suas informações fiquem seguras. Com isso, toda vez que você fizer um push na branch main, o GitHub vai executar esse workflow e atualizar seu site automaticamente. É bem tranquilo e vale a pena!

Roberto Cavalcanti Roberto Cavalcanti 90 karma há 5 horas
22

Uma outra abordagem que pode ser interessante é usar ferramentas como o Capistrano ou o Deployer. Eles são focados em automação de deploy e podem facilitar bastante a vida. Você pode integrar isso com o GitHub Actions também. Além disso, se você estiver usando Docker, pode ser uma boa ideia criar uma imagem do seu aplicativo e fazer o deploy dela. Isso traz mais consistência e facilita a gestão de dependências. Lembre-se de testar tudo em um ambiente de staging antes de ir para produção, assim você evita surpresas!

Fernanda Costa Fernanda Costa 689 karma há 5 horas

Receba ajuda de nossos Especialistas

Temos um time de especialistas treinado para te ajudar com o que você precisa.

Falar com Especialista
7

Sobre custos, vale lembrar que o uso do GitHub Actions é gratuito até um certo limite de minutos por mês. Para projetos pequenos, isso geralmente é suficiente. Mas se você ultrapassar esse limite, pode ser que comece a ter custos. Fique de olho também na sua conta do VPS, porque dependendo do que você estiver rodando, pode aumentar o consumo de recursos e, consequentemente, o valor da fatura. Sempre bom estar atento a isso!

Monique Andrade Monique Andrade 614 karma há 5 horas
1

Uma dica que eu sempre dou é para você manter um backup do seu código no VPS antes de fazer qualquer deploy. Isso pode salvar sua pele se algo der errado. Você pode usar comandos simples como `tar` para criar um arquivo compactado do diretório do seu projeto. Outra coisa é usar um sistema de versionamento no próprio servidor, assim você pode voltar para uma versão anterior rapidamente se necessário. Isso é essencial para evitar downtime.

Caio Ferraz Caio Ferraz 1.081 karma há 5 horas