Incus Terraform
Enable Incus remote API authentication
http://www.panticz.de/incus
Terraform main.tf
terraform { required_providers { incus = { source = "lxc/incus" } } } provider "incus" { # generate_client_certificates = true # accept_remote_certificate = true remote { name = "10.0.1.104" scheme = "https" address = "10.0.1.104" token = "xxxxxxxxxxxxxxxxxxxxxxxxxx" default = true } } data "template_file" "user_data" { template = <<EOF #cloud-config package_update: true packages: - nginx runcmd: - sudo systemctl stop unattended-upgrades - sudo apt purge -y unattended-upgrades EOF } resource "incus_instance" "instance_1" { name = "u2404" description = "Terraform Incus test container" image = "images:ubuntu/24.04/cloud" profiles = ["default"] wait_for_network = true config = { "boot.autostart" = true "limits.cpu" = 4 "cloud-init.user-data" = data.template_file.user_data.rendered } device { name = "http" type = "proxy" properties = { listen = "tcp:0.0.0.0:80" connect = "tcp:127.0.0.1:80" } } }
Deploy