Acceder a Kestra
- Abre tu navegador y visita:
https://<SERVER_IP> - Es normal ver un aviso de SSL en el navegador (certificado autofirmado)
- Crea tu cuenta de administrador en la primera visita.
- Métricas (solo para uso interno):
http://localhost:8081/prometheus(no expuesto públicamente por razones de seguridad)
Rutas importantes
- Directorio de instalación de Kestra:
/root/kestra - Archivo de configuración principal:
/root/kestra/application.yaml - Archivo Docker Compose:
/root/kestra/docker-compose.yml - Volumen de almacenamiento de Kestra:
/var/lib/docker/volumes/kestra-data/_data - Volumen de datos de PostgreSQL:
/var/lib/docker/volumes/postgres-data/_data - Configuración del sitio en Nginx:
/etc/nginx/sites-available/kestra - Sitio habilitado (enlace simbólico):
/etc/nginx/sites-enabled/kestra - Certificados SSL autofirmados:
/etc/nginx/ssl/fullchain.pemy/etc/nginx/ssl/privkey.pem
Gestionar el stack
cd /root/kestra
# View running containers
docker ps
# View logs
docker compose logs -f
# Restart services
docker compose restart
# Stop stack
docker compose down
# Start stack
docker compose up -d
Habilitar SSL con un dominio
1. Apunta tu dominio a la IP del servidor.
2. Actualizar el url en la configuración de Kestra (/root/kestra/application.yml):
url: https://yourdomain.com/
3. Reinicia los servicios de Kestra:
cd /root/kestra/
docker compose restart
4. Edita la configuración de Nginx y reemplaza ambos server_name <IP>; con tu dominio («<your-domain>) para los bloques HTTP (puerto 80) y HTTPS (puerto 443):
vim /etc/nginx/sites-available/kestra
5. Instala Certbot:
apt install -y certbot python3-certbot-nginx
6. Ejecuta el siguiente comando para generar un certificado válido de Let's Encrypt:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. Reemplaza las rutas SSL en la configuración de Nginx:
vim /etc/nginx/sites-available/kestra
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
8. Reinicia Nginx para aplicar los cambios:
systemctl restart nginx
9. Abre tu navegador y visita: https://yourdomain.com