Integración con GitHub Actions
Para usuarios avanzados, GitHub CI/CD (Integración Continua/Entrega Continua o Despliegue Continuo) puede desplegar automáticamente cambios de código en tu sitio Kinsta cada vez que se envíe un nuevo commit a la rama designada. Esta configuración permite el despliegue de código sin problemas desde tu entorno local a través de SSH y GitHub Actions, lo que permite actualizaciones continuas de tu sitio.
Para seguir estos pasos, debes tener un sitio existente alojado en Kinsta y una cuenta de GitHub.
1. Descarga una copia de seguridad de tu sitio
Puedes descargar una copia de seguridad de tu sitio para configurar el repositorio de GitHub y trabajar en él localmente. Alternativamente, puedes utilizar DevKinsta para extraer tu sitio del servidor Kinsta y trabajar en él localmente.
En MyKinsta, ve a Sitios > nombre del sitio > Copias de seguridad > Descargar > Crear copia de seguridad ahora.

Cuando tu copia de seguridad esté lista, haz clic en Descargar, guárdala en tu ordenador local y descomprime los archivos en una carpeta.
2. Configura el repositorio de GitHub
Abre la carpeta que contiene los archivos de tu sitio en tu editor de código preferido. Para evitar que se suban archivos innecesarios del core de WordPress, archivos multimedia o información confidencial, añade un archivo .gitignore al directorio raíz de tu proyecto. Puedes usar una plantilla de .gitignore estándar de WordPress, copiar su contenido y guardarlo para asegurarte de que solo se rastrean los archivos esenciales.
Crea un repositorio GitHub y envía los archivos de tu sitio a GitHub.
3. Configurar los secretos de GitHub para Kinsta
Para automatizar los despliegues desde GitHub a Kinsta, necesitas algunos datos clave de SSH, como tu nombre de usuario, contraseña, puerto y dirección IP. Como se trata de información confidencial, debes guardarla de forma segura como secretos de GitHub.
Dentro de GitHub, ve a tu repositorio, haz clic en Configuración > Secretos y variables > Acciones > Nuevo secreto del repositorio.
Añade las siguientes claves utilizando los datos del usuario principal de SFTP/SSH que encontrarás en la página Información de tu sitio en MyKinsta:
| Nombre del secreto | Secreto |
| KINSTA_SERVER_IP | Host e.g. 12.34.56.78 |
| KINSTA_USERNAME | Username e.g. kinstahelp |
| PASSWORD | Password |
| PORT | Port e.g. 12345 |

4. Genera una clave SSH en tu servidor Kinsta
Abre un nuevo terminal y accede mediante SSH a tu servidor Kinsta utilizando el comando terminal SSH desde la página de Información de tu sitio en MyKinsta.

Introduce la contraseña de tu sitio y, a continuación, genera una nueva clave SSH utilizando el siguiente comando, sustituyendo [email protected] por tu dirección de correo electrónico:
ssh-keygen -t rsa -b 4096 -C "[email protected]"Pulsa Intro para guardar la clave en la ubicación predeterminada y deja la frase de contraseña en blanco cuando se te solicite.

5. Añade la clave SSH a GitHub
Accede al contenido del archivo de la clave pública (por ejemplo, ~/.ssh/id_rsa.pub), con el siguiente comando:
cat ~/.ssh/id_rsa.pubEn GitHub, ve a Configuración > Claves SSH y GPG > Nueva clave SSH, introduce un título (por ejemplo, «Clave de servidor Kinsta»), asegúrate de que el Tipo de clave es Clave de autenticación, pega la clave pública en Clave y haz clic en Añadir clave SSH. Si eres miembro de una organización que utiliza claves de despliegue, debes añadir tu clave SSH como clave de despliegue. Para más detalles, consulta la documentación de GitHub sobre claves de Despliegue.
6. Configura Git para utilizar SSH en el servidor Kinsta
En MyKinsta, en la página de Información, copia la Ruta desde Detalles del entorno.

En el terminal, navega al directorio activo de tu sitio con el siguiente comando, sustituyendo /www/your-site/public por la ruta copiada de MyKinsta.
cd /www/your-site/publicInicializa el directorio como un repositorio Git y configura la URL remota para utilizar SSH con el siguiente comando, sustituyendo your-username y your-repo por tus credenciales git y tu repositorio:
git init
git remote add origin [email protected]:your-username/your-repo.gitConfirma que la configuración SSH funciona ejecutando el siguiente comando:
ssh -T [email protected]Deberías ver un mensaje similar a este: «¡Hola, tu-nombre-de-usuario! Te has autenticado correctamente, pero GitHub no ofrece acceso al shell». Tu servidor de Kinsta ya está listo para recibir e desplegar actualizaciones desde GitHub directamente a través de GitHub Actions.
7. Crea el flujo de trabajo de GitHub Actions
Este flujo de trabajo despliega los cambios en Kinsta automáticamente cada vez que realices un envío a la rama main. Para automatizar el despliegue, tienes que definir cómo se llevará a cabo mediante un archivo YAML.
En tu repositorio de GitHub, crea un nuevo directorio llamado .github/workflows dentro de este directorio, crea un nuevo archivo llamado deploy.yml y añade el siguiente contenido al archivo, sustituyendo your-site por el nombre de la carpeta de la ruta en tu sitio 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 branchEste flujo de trabajo hace lo siguiente
- Disparador: El flujo de trabajo se activa cada vez que se envía código a la rama
mainde tu repositorio de GitHub. - Jobs: El flujo de trabajo contiene un
jobllamadodeploy, que se ejecuta en una máquina virtual de Ubuntu (ubuntu-latest). - Comprobar código: Utiliza la acción
actions/[email protected]para extraer el último código de tu repositorio de GitHub. - Despliega en Kinsta mediante SSH:
- El plugin
appleboy/ssh-actionestablece una conexión SSH con tu servidor Kinsta utilizando los secretos que has almacenado en GitHub (host, nombre de usuario, contraseña y, opcionalmente, el puerto). El script de este paso ejecuta los siguientes comandos: - Comandos de despliegue:
cd /www/your-site/private: Te lleva al directorio donde está alojado WordPress.git fetch origin main: Obtiene los últimos cambios de la ramaprincipalde tu repositorio de GitHub.git reset --hard origin/main: Actualiza el sitio web con el código más reciente de la rama.
- El plugin
8. Prueba el flujo de trabajo
Una vez que hayas configurado el flujo de trabajo, puedes probarlo enviando un pequeño cambio a la rama main de tu repositorio de GitHub. Cada vez que envíes un cambio, GitHub Actions activará automáticamente el despliegue, descargando la última versión de tu código y desplegándola en tu sitio en producción en Kinsta.
Puedes supervisar el estado de tu Despliegue accediendo a la pestaña Acciones de tu repositorio de GitHub. Si el flujo de trabajo encuentra errores, verás registros detallados que te ayudarán a diagnosticar y solucionar los problemas.