Kestra

Plataforma de código aberto para a orquestração de fluxos de trabalho orientados por eventos e programados.

Aceder ao Kestra

  • Abra o seu navegador e visite: https://<SERVER_IP>
  • É de esperar que o navegador exiba um aviso SSL (certificado autoassinado)
  • Crie a sua conta de administrador logo na primeira visita.
  • Métricas (apenas para uso interno): http://localhost:8081/prometheus (não divulgado publicamente por motivos de segurança)

Caminhos importantes

  • Diretório de instalação do Kestra: /root/kestra
  • Arquivo de configuração principal: /root/kestra/application.yaml
  • Ficheiro Docker Compose: /root/kestra/docker-compose.yml
  • Capacidade de armazenamento do Kestra: /var/lib/docker/volumes/kestra-data/_data
  • Volume de dados do PostgreSQL: /var/lib/docker/volumes/postgres-data/_data
  • Configuração do site Nginx: /etc/nginx/sites-available/kestra
  • Site ativado (ligação simbólica): /etc/nginx/sites-enabled/kestra
  • Certificados SSL autoassinados: /etc/nginx/ssl/fullchain.pem e /etc/nginx/ssl/privkey.pem

Gerir a pilha

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

Ativar SSL com um domínio

1. Direcione o seu domínio para o IP do servidor.

2. Atualizar o url na configuração do Kestra (/root/kestra/application.yml):

  url: https://yourdomain.com/

3. Reinicie os serviços do Kestra:

cd /root/kestra/
docker compose restart

4. Edite a configuração do Nginx e substitua ambos server_name <IP>; com o seu domínio (<your-domain>) para blocos HTTP (porta 80) e HTTPS (porta 443):

vim /etc/nginx/sites-available/kestra

5. Instale o Certbot:

apt install -y certbot python3-certbot-nginx

6. Execute o seguinte comando para gerar um certificado Let’s Encrypt válido:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

7. Substituir os caminhos SSL na configuração do 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. Reinicie o Nginx para aplicar as alterações:

systemctl restart nginx

9. Abra o seu navegador e aceda a: https://yourdomain.com

Detalhes da candidatura