Como configurar deploy automático de um site via Git em um VPS imprimir

  • 0

Deploy automático via Git no seu VPS: descomplicando com a Sensei 🥋

Oi! Eu sou a Sensei da GeHost, e hoje vou te ensinar uma técnica que separa quem "sobe site na unha" de quem tem um fluxo de trabalho profissional: o deploy automático via Git. Com isso configurado, toda vez que você enviar uma atualização do seu código, o seu site no VPS se atualiza sozinho — sem precisar copiar arquivo por FTP, sem drama. Bora aprender juntos, passo a passo, sem pressa.

Este guia é voltado para quem tem acesso SSH ao próprio servidor (VPS). Se você não sabe se o seu plano inclui esse tipo de acesso, é só confirmar com a nossa equipe pelo painel.gehost.com.br antes de começar — assim você já parte com o pé direito.

O que você vai precisar antes de começar

  • Acesso SSH ao seu servidor;
  • O Git instalado no seu computador (na maioria dos sistemas já vem, ou é só instalar);
  • Seu projeto já versionado em um repositório Git local;
  • Um pouquinho de paciência na primeira vez — depois de configurado, é só magia 🪄.

Passo 1 — Confirme (ou instale) o Git no servidor

Conecte no seu VPS via SSH e confira se o Git já está instalado:

git --version

Se não aparecer nenhuma versão, instale (em distribuições baseadas em Debian/Ubuntu, por exemplo):

sudo apt update
sudo apt install git -y

Passo 2 — Crie um repositório "bare" no servidor

O segredo do deploy automático é ter, no servidor, um repositório especial chamado bare — ele não guarda os arquivos "visíveis", só o histórico do Git, e é para onde você vai enviar (dar push) suas atualizações. Crie uma pasta para ele, fora da pasta pública do site:

mkdir -p ~/meusite.git
cd ~/meusite.git
git init --bare

Passo 3 — Configure o "gatilho" de deploy (hook post-receive)

Agora vem a parte mágica: um script que roda automaticamente toda vez que você envia código para esse repositório, copiando os arquivos para a pasta real do site. Dentro da pasta do repositório bare, edite o arquivo de hook:

nano hooks/post-receive

Cole um conteúdo parecido com este (ajuste os caminhos para a pasta onde o seu site realmente fica publicado):

#!/bin/bash
git --work-tree=/caminho/para/a/pasta-do-site --git-dir=/caminho/para/meusite.git checkout -f

Salve e dê permissão de execução:

chmod +x hooks/post-receive

Passo 4 — Aponte seu computador para o servidor

De volta no seu computador, dentro da pasta do seu projeto local, adicione o servidor como um "remote" do Git:

git remote add producao ssh://usuario@seu-servidor/~/meusite.git

Dica: troque usuario pelo seu usuário SSH e seu-servidor pelo endereço/domínio do seu VPS — dados que você recebeu no cadastro do seu servidor.

Passo 5 — Teste o deploy!

Agora é a hora da verdade. Faça um commit qualquer e envie para o servidor:

git add .
git commit -m "primeiro deploy automático"
git push producao main

Se tudo estiver certo, o Git vai mostrar o processo de envio e, no fim, o hook post-receive vai rodar sozinho, atualizando os arquivos do site. É só abrir o seu domínio no navegador para conferir!

Dica de segurança da Sensei: prefira sempre autenticação por chave SSH em vez de senha — é mais seguro e evita que você tenha que digitar senha a cada push. E nunca versione arquivos sensíveis (senhas, chaves de API, arquivos de configuração com dados confidenciais) dentro do repositório — use variáveis de ambiente ou arquivos ignorados pelo Git (.gitignore).
Dica extra: antes de configurar automações novas em um site que já está no ar, é sempre uma boa prática garantir que você tem um backup recente — assim, se algo sair diferente do esperado, você volta atrás com tranquilidade.

Quando pedir uma força pra gente

Se em algum passo o acesso SSH não funcionar, ou você não tiver certeza dos caminhos corretos do seu servidor, não force a barra sozinho — abra um chamado pelo painel.gehost.com.br que a equipe te ajuda a confirmar os dados certos do seu ambiente.

E é isso! Com o deploy automático configurado, atualizar o seu site vira rotina de poucos segundos. Continue praticando, e qualquer dúvida, a gente está por aqui. 🥋


Esta resposta lhe foi útil?

« Retornar