There are so many ways to run Kestra: from a single Docker container, Docker Compose, Helm Charts to an installation with a standalone binary JAR file.

Kestra can be deployed to your laptop or an on-prem server to a distributed cluster running in a public cloud. This can be done using different methods and we recommend you select the one that matches your preferred environment.

Tip: For production deployments, we recommend using our official Helm Charts or Docker Compose setup.

For this course we will be using Docker and Docker Compose. If you want to learn about all the other ways you can install Kestra, please refer to the official installation guide in the Kestra documentation.

Prerequisites

Make sure you have Docker and Docker Compose installed and running before continuing.

1. Kestra installation with Docker and Docker Compose

Once you have Docker and Docker Compose installed follow these steps:

Docker Compose file

Select one of the commands for your operating system.

Warning: Do not run both commands.

Mac / Linux

Download the Docker Compose file using the following command on Linux or macOS:

curl -o docker-compose.yml \
https://raw.githubusercontent.com/kestra-io/kestra/develop/docker-compose.yml

Windows

Download the Docker Compose file using the following command on Windows using Powershell:

Invoke-WebRequest -Uri "https://raw.githubusercontent.com/kestra-io/kestra/develop/docker-compose.yml" -OutFile "docker-compose.yml"

Note: You can also download theDocker Composefile from GitHub manually and save it as docker-compose.yml

2. Launch Kestra

Use the following Docker command to start the Kestra server:

docker-compose up -d

The Docker container will now be running and if you run the command docker-compose ps.

Then open the URL http://localhost:8080 in your browser to launch the UI.

Download Docker Compose YAML and run.

Note: If you have any issues, please refer to the Kestra Troubleshooting Guide.

3. Create a Kestra Account and log in

Kestra will prompt you to create your user, if you have not set credentials in the Docker Compose config file. However, if you prefer to manually set the authentication details in your configuration, uncomment these lines in your docker-compose.yml file and amend them accordingly:

basicAuth:
  username: admin
  password: kestra

Warning: Remember to restart your Docker containers after making any changes to your docker-compose.yml file using the following command:

docker-compose up -d

After logging in successfully you will see your Dashboard.

Set authentication and log in to view your dashboard.

Stopping Kestra

When you no longer need Kestra running, stop the running Kestra containers with the following command:

docker-compose down

Stopping the Kestra instance.

Note: Your data will persist for next time you run the Docker Compose up command


Next step

Now you have Kestra running, the next step is to create your first Flow. You can do so with YAML, No-Code or AI Copilot (Gemini), each of which is covered in its own lesson in this course. We would recommend you do all three lessons so that you can have a better understanding of what is possible with Kestra. Alternatively, you can pick the lesson which interests you the most.