blob: 04b2cb139dd5d2bffb679b3dcee77cd762018132 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
resource "proxmox_vm_qemu" "docker_server" {
lifecycle {
ignore_changes = [
bootdisk,
]
}
name = "docker-server"
desc = "Debian server with docker installed."
agent = 1 # Qemu Guest Agent
target_node = var.proxmox_node
tags = "debian;docker"
clone = var.debian_server_bookworm_packer_image_name
full_clone = true
qemu_os = "other"
cores = 2
sockets = 1
cpu_type = "host"
memory = 4096
scsihw = "virtio-scsi-pci"
bootdisk = "scsi0"
disks {
ide {
ide0 {
cloudinit {
storage = "local-lvm"
}
}
}
virtio {
virtio0 {
disk {
storage = "local-lvm"
size = "20G"
iothread = true
replicate = false
}
}
}
}
network {
id = 0
model = "virtio"
bridge = "vmbr0"
}
# Cloud-Init settings
ipconfig0 = "ip=dhcp"
ciuser = "mas"
sshkeys = var.ssh_public_key
}
# Run Ansible playbook after VM creation to install Docker
module "ansible_provision_docker_server" {
source = "./modules/ansible_provisioner"
vm_ip = proxmox_vm_qemu.docker_server.default_ipv4_address # Pass only the VM's IP
vm_username = var.vm_username
ssh_private_key_path = var.ssh_private_key_path
ansible_playbook_path = var.docker_ansible_playbook_path
}
|