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 the Docker Compose file 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 configuration file. However, if you prefer to manually set the authentication details in your Docker Compose configuration, uncomment these lines in your docker-compose.yml file and amend them accordingly:

basic-auth:
  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 steps

Now you have Kestra running, the next step is to create your first Flow. You can do so with Flow Code, No-Code or the AI Copilot. We would recommend try all three methods of Flow creation so that you can have a better understanding of what is possible with Kestra.