Servidor & DevOps 68 visualizações

Como configurar deploy automático do GitHub direto para o VPS a cada push

Ver no WHMCS

Como configurar deploy automático do GitHub direto para o VPS a cada push

Olá, querido(a) desenvolvedor(a)! Seja bem-vindo(a) ao seu novo guia de DevOps com a GeHost — onde transformamos o seu código em realidade, sem esforço.

Imagine isso: você faz um push no GitHub com uma nova atualização, e automaticamente, seu site no servidor se atualiza. Sem precisar entrar no painel, sem comandos manuais. Isso é possível — e hoje, vou te ensinar como fazer isso com segurança e simplicidade.

💡 Dica do Sensei: Esse processo é chamado de deploy automático. Ele é ideal para projetos em desenvolvimento constante, como sites estáticos, portfólios ou aplicações simples com HTML, CSS e JS.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Um domínio hospedado na GeHost (com DNS apontando para o servidor).
  • Um repositório no GitHub público ou privado (com acesso ao código).
  • Um acesso SSH ao seu servidor (via cPanel ou terminal).
  • Permissão para instalar ferramentas no servidor (como git e nginx).

Passo a passo: configure o deploy automático

  1. Entre no cPanel

    Para isso, acesse o painel do cliente em painel.gehost.com.br e faça login com suas credenciais.

    Tela de login do cPanel com campos Usuário e Senha
  2. Acesse o Gerenciador de Arquivos

    No cPanel, clique em “Arquivos” e depois em “Gerenciador de Arquivos”.

    Tela do Gerenciador de Arquivos com árvore de pastas e botão de ação
  3. Crie uma pasta para o projeto

    Navegue até a pasta public_html (ou o domínio principal) e crie uma nova pasta com o nome do seu projeto (ex: meu-site).

    Depois, vá para essa pasta e clique em “Criar” para gerar um arquivo index.html de exemplo, só para testar.

  4. Ative o SSH no servidor

    Se ainda não tiver acesso SSH, entre em “Terminal” no cPanel (ou use o terminal do seu computador).

    Execute o comando abaixo para instalar o Git (se ainda não estiver instalado):

    sudo apt update && sudo apt install git -y
  5. Clone o repositório no servidor

    Na pasta do seu projeto (dentro de public_html), execute:

    git clone https://github.com/seu-usuario/seu-repositorio.git .

    Substitua seu-usuario e seu-repositorio pelo nome real do seu repositório.

    Isso baixará todo o código diretamente no servidor.

  6. Crie um webhook no GitHub

    Entre no seu repositório no GitHub, vá em Settings → Webhooks → Add webhook.

    Preencha os campos assim:

    • Payload URL: https://seu-domínio.com.br/webhook (substitua pelo seu domínio real)
    • Content type: application/json
    • Which events would you like to trigger this webhook? Selecione Just the push event.
  7. Configure o script de deploy no servidor

    Na pasta do seu projeto (dentro de public_html), crie um arquivo chamado webhook.php.

    Coloque dentro dele o seguinte código (use apenas para testes ou ambientes de desenvolvimento seguro):

    <?php
    // Verifica se é um push do GitHub
    if ($_SERVER['REQUEST_METHOD'] === 'POST') {
        $payload = json_decode(file_get_contents('php://input'), true);
        if ($payload['ref'] === 'refs/heads/main') { // ou 'master'
            // Atualiza o código
            $output = shell_exec('cd /caminho/para/seu/projeto && git pull origin main 2>&1');
            echo "Deploy realizado com sucesso: " . $output;
        } else {
            echo "Nenhum push na branch principal.";
        }
    } else {
        echo "Acesso negado.";
    }
    ?>
        

    ⚠️ Importante: Substitua /caminho/para/seu/projeto pelo caminho real da pasta do seu projeto no servidor (ex: /home/usuario/public_html/meu-site).

  8. Proteja o webhook

    Para segurança, não deixe o script aberto para qualquer um. Você pode:

    • Usar um token secreto no URL (ex: https://seu-domínio.com.br/webhook?token=abc123).
    • Restringir o acesso por IP (via .htaccess).
    • Usar HTTPS (obrigatório em produção).

    Se precisar, entre em contato com nosso suporte para ajuda com segurança.

  9. Teste o deploy

    Faça um push no GitHub (ex: altere um arquivo e salve). Espere alguns segundos.

    Volte para o servidor e verifique se o código foi atualizado.

    Se tudo der certo, seu site já está com a nova versão!

Dica extra do Sensei

Se você quiser automatizar ainda mais, pode usar ferramentas como GitHub Actions ou CI/CD com um script que atualiza o servidor via SSH. Mas para iniciantes, o método acima é perfeito — simples, claro e poderoso.

📌 Lembre-se: A GeHost oferece hospedagem segura e confiável com suporte humano. Se precisar de ajuda com SSH, Git ou segurança, entre em contato conosco — estamos aqui para te ajudar.

Quer mais?

Se quiser, podemos criar um template pronto com o script de deploy, ou até automatizar com um botão no painel. É só pedir!

Com carinho,
Sensei da GeHost
*Grupo: G e Soluções e Eventos LTDA (Razão Social: G e Soluções e Eventos LTDA — CNPJ: 46.647.904/0001-04)*

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.