Kestra and Proxmox: automate VM cloning and startup

Learn to build a Kestra flow for Proxmox VM provisioning, with an Ubuntu template, scoped API permissions and Docker Compose secrets.

Player not loading? Watch on YouTube

This Kestra-sponsored tutorial builds a workflow to clone a Proxmox VM template and start the resulting machine. The speaker uses it to prepare fresh Linux environments for recording tutorials. The focus is infrastructure automation rather than AI model deployment.

The walkthrough requires a Proxmox server and an existing Kestra installation. The speaker hosts Kestra on a Linode VPS and connects to his office network through Tailscale, but says this arrangement is optional: Kestra can also run on a local machine or inside a Proxmox VM. He describes Kestra as open source; installation itself belongs to an earlier tutorial.

Template preparation uses Ubuntu Desktop with two CPU cores and 4 GB of memory as demo settings. The speaker installs updates, clears machine ID files and converts the VM into a template. He then creates a dedicated service account, a role with six privileges and an API token with privilege separation. Both the user and token receive role assignments.

The Kestra flow contains clone and start tasks, with a matching node name and an unused destination VM ID. The final section puts Base64-encoded connection values into the Docker Compose environment and relaunches Kestra. The speaker calls this encoding more secure, but the tutorial does not establish that claim. He reports successful VM creation after execution; distro selection through a dropdown remains a planned addition.