diff options
Diffstat (limited to 'main.tf')
| -rw-r--r-- | main.tf | 52 |
1 files changed, 52 insertions, 0 deletions
@@ -0,0 +1,52 @@ +terraform { + required_providers { + proxmox = { + source = "telmate/proxmox" + version = "3.0.2-rc04" + } + } +} + +provider "proxmox" { + pm_api_url = "https://192.168.1.45:8006/api2/json" + pm_tls_insecure = true + #pm_api_token_id = "terraform-prov@pve!terraform" + #pm_api_token_secret = "64bd4ba4-f4c0-4029-9f16-5b61bca2da0d" + pm_user = "terraform-prov@pve" + pm_password = "terraform" + pm_debug = true +} + +resource "proxmox_lxc" "test" { + target_node = "atlas" # your Proxmox node name + hostname = "web" + ostemplate = "local:vztmpl/alpine-3.21-default_20241217_amd64.tar.xz" + + unprivileged = true + password = "test1" + + cores = 2 + memory = 512 + swap = 512 + + # root disk + rootfs { + storage = "local-lvm" # or your ZFS/LVM storage name + size = "4G" + } + + # network + network { + name = "eth0" + bridge = "vmbr0" + ip = "dhcp" # or "192.168.10.50/24" + # gw = "192.168.10.1" # needed if using static IP + } + + # optional: inject your SSH key so you don’t use the password + # ssh_public_keys = file("~/.ssh/id_rsa.pub") + + # quality-of-life + start = true + #tags = "tf,lxc,web" +} |
