Kestra setup with Docker, Gemini and Tavily

Learn to start Kestra 1.3 with Docker Compose, configure Gemini and Tavily API keys, and access the web UI at localhost:8080.

Player not loading? Watch on YouTube

This LLM Zoomcamp lesson prepares Kestra for AI workflows using a Docker Compose file from the course repository. The configuration includes Postgres for data storage and Kestra version 1.3, which the speaker describes as the latest LTS release at the time of recording. The web UI uses port 8080; viewers can change the mapping if another service already uses it.

The setup connects the AI copilot to Google Gemini. The speaker creates a key in Google AI Studio and selects Gemini 2.5 Flash. He exports credentials as environment variables rather than putting their values directly in the Compose file, to avoid exposing them through a GitHub commit. For workflow access, he explains that secrets in Kestra's open source edition use base64-encoded environment variables with a SECRET_ prefix. He also creates a Tavily API key and encodes it for use inside Kestra.

Starting the self-hosted service requires Docker to be running. The speaker uses Colima and suggests Docker Desktop as another option, then runs Docker Compose up and opens localhost:8080. He recommends replacing the example login credentials with a chosen email and password. The lesson ends with the configured copilot visible; generating workflows from descriptions is reserved for the next lesson. This setup uses external API keys for AI access rather than demonstrating how to run models locally.