Como configurar deploy automático via Git no VPS ao dar push no repositório
Olá, dev! Seja bem-vindo(a) ao seu novo passo rumo à automação e produtividade. Aqui na GeHost, acreditamos que você merece focar no que realmente importa: criar coisas incríveis — enquanto o resto acontece sozinho. 🌟
Hoje, vamos te ensinar, com carinho e clareza, como configurar um deploy automático via Git no seu VPS. Isso significa: você faz um push no seu repositório (no GitHub, GitLab, etc.), e seu site é atualizado automaticamente no servidor — sem precisar entrar no painel, sem comandos complicados. Simples assim.
Antes de começar: o que você precisa
- Um repositório Git público ou privado (GitHub, GitLab, Bitbucket, etc.)
- Seu VPS com acesso via SSH (já configurado na GeHost)
- Um domínio apontado para o VPS (ou o IP do servidor)
- Permissão para usar SSH e Git no servidor
Dica Sensei: Se você ainda não tem um repositório, crie um agora. O Git é como seu diário de código — guarda tudo, e permite que você volte no tempo se precisar. 📓
Passo 1: Acesse o cPanel do seu VPS
Para começar, faça login no painel da GeHost:
- Abra seu navegador e vá para painel.gehost.com.br
- Insira seu usuário e senha (os mesmos da sua conta GeHost)
- Na lista de servidores, clique em cPanel do seu VPS
Passo 2: Acesse o Gerenciador de Arquivos
No cPanel, localize e clique em Gerenciador de Arquivos (File Manager).
Passo 3: Crie uma pasta para seu projeto
Na árvore de arquivos, vá até a pasta public_html (ou a que aponta para seu site). Clique em Novo e crie uma pasta com o nome do seu projeto, por exemplo: meu-site.
Essa será a pasta onde seu código será deployado automaticamente.
Passo 4: Configure um repositório Git no servidor
Abra o terminal do seu computador (ou use o terminal do cPanel via SSH) e execute os seguintes comandos no servidor:
- Entre na pasta do seu projeto (ex:
cd public_html/meu-site) - Execute:
git init— isso cria um repositório Git local - Execute:
git config --local user.name "Seu Nome" - Execute:
git config --local user.email "seu@email.com" - Execute:
git add .— adiciona todos os arquivos - Execute:
git commit -m "Primeiro commit"
Dica Sensei: O comando
git add .é como dizer “quero que tudo seja monitorado”. Ocommité como salvar uma versão do seu trabalho — sempre bom ter um bom nome para ele!
Passo 5: Adicione o repositório remoto
Volte ao seu computador e vá ao seu repositório (GitHub/GitLab/etc.). Copie o link do repositório (ex: https://github.com/seu-usuario/meu-site.git).
No terminal do servidor, execute:
git remote add origin https://github.com/seu-usuario/meu-site.gitgit fetch origingit branch --set-upstream-to=origin/main main(oumaster, dependendo do nome da branch)
Passo 6: Configure o webhook no repositório remoto
Agora, vamos dizer ao GitHub/GitLab: “quando houver um push, me avise!”
- Entre no seu repositório no GitHub/GitLab
- Procure por Settings → Webhooks
- Clique em Add webhook
- Na URL, coloque:
https://seu-dominio.com.br/deploy.php(substitua pelo seu domínio) - Selecione application/json como conteúdo
- Escolha Just the push event
- Clique em Add webhook
Dica Sensei: O webhook é o “sinal de alerta” entre o seu repositório e o servidor. Ele dispara o deploy assim que você atualiza o código.
Passo 7: Crie o arquivo de deploy no servidor
Volte ao cPanel, abra o Gerenciador de Arquivos e vá até a pasta do seu projeto (ex: public_html/meu-site).
Crie um novo arquivo chamado deploy.php com o seguinte conteúdo:
<?php
// Arquivo deploy.php — executa o pull ao receber o webhook
echo "Iniciando deploy...\n";
// Caminho da pasta do projeto
$dir = '/home/seu-usuario/public_html/meu-site';
// Executa o pull do Git
$output = shell_exec("cd $dir && git pull origin main 2>&1");
echo $output;
// Responde com sucesso
http_response_code(200);
echo "Deploy concluído com sucesso!";
?>
Dica Sensei: Esse arquivo é o “coração” do deploy automático. Ele recebe o sinal do webhook e atualiza o código no servidor. Mantenha-o seguro — não o deixe acessível publicamente!
Passo 8: Teste o deploy
Volte ao seu repositório no GitHub/GitLab e faça um pequeno ajuste (ex: altere um texto no index.html), depois faça um git commit e git push.
Em seguida, acesse seu site. Se tudo estiver certo, a mudança aparecerá imediatamente!
Pronto! Você está no controle do seu deploy 🎉
Parabéns, dev! Agora você não precisa mais se preocupar com uploads manuais. Cada vez que você fizer um push, seu site será atualizado automaticamente.
Se algo não funcionar, verifique:
- Se o webhook está com a URL correta
- Se o arquivo
deploy.phpestá na pasta certa - Se o repositório remoto está correto no servidor
- Se o servidor tem permissão para executar comandos via PHP
Leve em conta: O deploy automático é uma ferramenta poderosa, mas sempre faça testes em ambientes de desenvolvimento antes de aplicar em produção. E lembre-se: a GeHost está aqui com você. Se precisar de ajuda, abra um ticket no painel da GeHost — vamos te ajudar com um sorriso no coração. 💚
Seu código está vivo