Integração com o GitHub Actions
Para usuários avançados, o GitHub CI/CD (Continuous Integration/Continuous Delivery ou Continuous Deployment) pode implantar automaticamente alterações de código no seu site na Kinsta sempre que um novo commit for enviado para o branch designado. Essa configuração permite a implantação perfeita do código a partir do seu ambiente local via SSH e GitHub Actions, possibilitando atualizações contínuas em seu site.
Para seguir essas etapas, você deve ter um site existente hospedado na Kinsta e uma conta no GitHub.
1. Baixar um backup do seu site
Você pode baixar um backup do seu site para configurar o repositório do GitHub e trabalhar nele localmente. Como alternativa, você pode usar o DevKinsta para extrair seu site do servidor Kinsta e trabalhar nele localmente.
No MyKinsta, vá em Sites > nome do site > Backups > Download > Criar backup agora.

Quando o backup estiver pronto, clique em Download, salve-o em seu computador local e descompacte os arquivos em uma pasta.
2. Configurar o repositório no GitHub
Abra a pasta que contém os arquivos do seu site no editor de código de sua preferência. Para evitar o upload de arquivos principais do WordPress desnecessários, uploads de mídia ou informações sensíveis, adicione um arquivo .gitignore ao diretório raiz do seu projeto. Você pode usar um template padrão de .gitignore para WordPress, copiar seu conteúdo e salvá-lo para garantir que somente os arquivos essenciais sejam rastreados.
Crie um repositório do GitHub e envie os arquivos do seu site para o GitHub.
3. Configurar secrets do GitHub para a Kinsta
Para automatizar as implantações do GitHub para a Kinsta, você precisa dos principais detalhes do SSH, incluindo seu nome de usuário, senha, porta e endereço IP. Como essas informações são sensíveis, você deve armazená-las com segurança, como GitHub Secrets.
No GitHub, vá até o seu repositório, clique em Settings > Secrets and variables > Actions > New repository secret.
Adicione os seguintes segredos usando os detalhes do usuário SFTP/SSH principal na página de informações do seu site no MyKinsta:
| Secret name | Secret |
| KINSTA_SERVER_IP | Host, por exemplo, 12.34.56.78 |
| KINSTA_USERNAME | Nome de usuário, por exemplo, kinstahelp |
| PASSWORD | Senha |
| PORT | Porta, por exemplo, 12345 |

4. Gerar uma chave SSH no seu servidor da Kinsta
Abra um novo terminal e faça o SSH em seu servidor Kinsta usando o comando do terminal SSH na página de informações do seu site no MyKinsta.

Digite a senha do seu site e gere uma nova chave SSH usando o seguinte comando, substituindo [email protected] pelo seu endereço de e-mail:
ssh-keygen -t rsa -b 4096 -C "[email protected]"Pressione Enter para salvar a chave no local padrão e deixe a frase secreta em branco quando solicitado.

5. Adicionar a chave SSH ao GitHub
Acesse o conteúdo do arquivo de chave pública (por exemplo, ~/.ssh/id_rsa.pub) com o seguinte comando:
cat ~/.ssh/id_rsa.pubNo GitHub, vá em Settings > SSH and GPG keys > New SSH key, insira um título (por exemplo, “Kinsta Server Key”), certifique-se de que o Key type é Authentication Key, cole a chave pública no campo Key e clique em Add SSH Key. Se você for membro de uma organização que usa Deploy keys, deve adicionar sua chave SSH como uma deploy key. Para mais detalhes, consulte a documentação do GitHub sobre Deploy keys.
6. Configurar o Git para usar SSH no servidor Kinsta
No MyKinsta, na página Informações, copie o caminho dos detalhes do ambiente.

No terminal, navegue até o diretório ativo do seu site com o seguinte comando, substituindo /www/your-site/public pelo caminho copiado do MyKinsta.
cd /www/your-site/publicInicialize o diretório como um repositório Git e defina a URL remota para usar SSH com o seguinte comando, substituindo your-username e your-repo por suas credenciais git e repositório:
git init
git remote add origin [email protected]:your-username/your-repo.gitConfirme se a configuração do SSH funciona executando o seguinte comando:
ssh -T [email protected]Você deverá ver uma mensagem semelhante a: “Hi seu-username! You’ve successfully authenticated, but GitHub does not provide shell access.” Seu servidor da Kinsta agora está pronto para receber e implantar atualizações do GitHub diretamente por meio do GitHub Actions.
7. Criar o fluxo de trabalho do GitHub Actions
Este fluxo de trabalho implanta alterações na Kinsta automaticamente sempre que você faz push para o branch main. Para automatizar a implantação, você precisa definir como ela será executada usando um arquivo YAML.
No seu repositório do GitHub, crie um novo diretório chamado .github/workflows dentro desse diretório, crie um novo arquivo chamado deploy.yml e adicione o seguinte conteúdo ao arquivo, substituindo your-site pelo nome da pasta do caminho em seu site Kinsta:
name: Deploy to Kinsta
on:
push:
branches:
- main # Trigger the workflow only when changes are pushed to the main branch
jobs:
deploy:
runs-on: ubuntu-latest
steps:
# Setup Node.js (only if needed for build tasks)
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'
# Checkout the latest code from the GitHub repository
- name: Checkout code
uses: actions/[email protected]
# Deploy to Kinsta via SSH
- name: Deploy via SSH
uses: appleboy/[email protected]
with:
host: ${{ secrets.KINSTA_SERVER_IP }}
username: ${{ secrets.KINSTA_USERNAME }}
password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }} # Optional, default is 22
script: |
# Navigate to the live site directory
cd /www/your-site/public
# Pull the latest changes from the GitHub repository
git fetch origin main
git reset --hard origin/main # Ensure the live site matches the latest main branchEsse fluxo de trabalho faz o seguinte:
- Trigger: o fluxo de trabalho é acionado toda vez que o código é enviado para o branch
maindo seu repositório no GitHub. - Jobs: o fluxo de trabalho contém um
jobchamadodeploy, que é executado em uma máquina virtual do Ubuntu (ubuntu-latest). - Código de checkout: isso usa a ação
actions/[email protected]para extrair o código mais recente do seu repositório do GitHub. - Implantar na Kinsta via SSH:
- O plugin
appleboy/ssh-actionestabelece uma conexão SSH com seu servidor Kinsta usando os segredos que você armazenou no GitHub (host, nome de usuário, senha e, opcionalmente, a porta). O script nessa etapa executa os seguintes comandos: - Comandos de implantação:
cd /www/seu-site/private: navega até o diretório ativo onde o WordPress está hospedado.git fetch origin main: obtém as alterações mais recentes do branchmainem seu repositório do GitHub.git reset --hard origin/main: Atualiza o site ativo com o código mais recente do branch.
- O plugin
8. Testar o fluxo de trabalho
Depois de configurar o fluxo de trabalho, você pode testá-lo fazendo push de uma pequena alteração no branch maindo seu repositório do GitHub. Cada vez que você faz push de uma alteração, o GitHub Actions aciona automaticamente a implantação, puxando a versão mais recente do seu código e implantando-a no seu site de produção na Kinsta.
Você pode monitorar o status da sua implantação acessando a aba Actions no seu repositório do GitHub. Se o fluxo de trabalho encontrar erros, você verá registros detalhados para ajudá-lo a solucionar e corrigir os problemas.