Kestra

Open-Source-Plattform für ereignisgesteuerte und zeitgesteuerte Workflow-Orchestrierung.

Zugang Kestra

  • Öffnen Sie Ihren Browser und besuchen Sie: https://<SERVER_IP>
  • Eine SSL-Warnung im Browser ist zu erwarten (selbstsigniertes Zertifikat).
  • Erstellen Sie Ihr Administratorkonto gleich bei Ihrem ersten Besuch.
  • Kennzahlen (nur für den internen Gebrauch): http://localhost:8081/prometheus (aus Sicherheitsgründen nicht öffentlich zugänglich)

Wichtige Pfade

  • Kestra-Installationsverzeichnis: /root/kestra
  • Hauptkonfigurationsdatei: /root/kestra/application.yaml
  • Docker Compose-Datei: /root/kestra/docker-compose.yml
  • Speichervolumen von Kestra: /var/lib/docker/volumes/kestra-data/_data
  • PostgreSQL-Datenvolumen: /var/lib/docker/volumes/postgres-data/_data
  • Nginx-Website-Konfiguration: /etc/nginx/sites-available/kestra
  • Aktivierte Website (Symlink): /etc/nginx/sites-enabled/kestra
  • Selbstsignierte SSL-Zertifikate: /etc/nginx/ssl/fullchain.pem und /etc/nginx/ssl/privkey.pem

Den Stack verwalten

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

SSL mit einer Domain aktivieren

1. Richten Sie Ihre Domain auf die Server-IP aus.

2. Aktualisieren Sie die url in Kestra-Konfiguration (/root/kestra/application.yml):

  url: https://yourdomain.com/

3. Kestra-Dienste neu starten:

cd /root/kestra/
docker compose restart

4. Bearbeiten Sie die Nginx-Konfiguration und ersetzen Sie beide server_name <IP>; mit Ihrer Domain (<your-domain>) sowohl für HTTP- (Port 80) als auch für HTTPS-Blöcke (Port 443):

vim /etc/nginx/sites-available/kestra

5. Certbot installieren:

apt install -y certbot python3-certbot-nginx

6. Führen Sie den folgenden Befehl aus, um ein gültiges Let’s Encrypt-Zertifikat zu generieren:

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

7. Ersetzen Sie die SSL-Pfade in der Nginx-Konfiguration:

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. Starten Sie Nginx neu, um die Änderungen zu übernehmen:

systemctl restart nginx

9. Öffnen Sie Ihren Browser und besuchen Sie: https://yourdomain.com

Anwendungsdetails