added clout init image docs
This commit is contained in:
parent
928086aea9
commit
eb9546c9af
4 changed files with 84 additions and 34 deletions
51
README.md
51
README.md
|
|
@ -3,3 +3,54 @@
|
|||
PVE-Go is a go library for the Proxmox VE API.
|
||||
|
||||
The design is based on the Hetzner Clound API implementation: https://github.com/hetznercloud/hcloud-go
|
||||
|
||||
## Cloud-Init Image
|
||||
|
||||
How to prepare a cloud-init image.
|
||||
|
||||
Download the latest version of the base image to one of your proxmox nodes:
|
||||
|
||||
```
|
||||
curl -sSL https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img >/tmp/bionic-server-cloudimg-amd64.img
|
||||
```
|
||||
|
||||
Create a cloud-init config to bootstrap the template:
|
||||
```
|
||||
cat <<'EOF'> /var/lib/vz/snippets/9000_bootstrap
|
||||
#cloud-config
|
||||
package_update: true
|
||||
package_upgrade: true
|
||||
ntp:
|
||||
enabled: true
|
||||
servers: ["pool.ntp.org"]
|
||||
ssh_deletekeys: true
|
||||
ssh_genkeytypes: ["ed25519", "rsa"]
|
||||
runcmd:
|
||||
- "apt-get -y clean"
|
||||
- "apt-get -y autoremove --purge"
|
||||
- "bash -c 'rm /home/ubuntu/.ssh/authorized_keys; exit 0'"
|
||||
- "bash -c 'find /var/log -type f | while read f; do echo -ne >$f; done; exit 0'"
|
||||
- "bash -c 'rm -rf /var/lib/cloud/*; exit 0'"
|
||||
power_state:
|
||||
mode: poweroff
|
||||
EOF
|
||||
```
|
||||
|
||||
Create the template VM:
|
||||
```
|
||||
qm destroy 9000
|
||||
qm create 9000 --memory 2048 --net0 virtio,bridge=vmbr0
|
||||
qm importdisk 9000 /tmp/bionic-server-cloudimg-amd64.img local
|
||||
qm set 9000 --scsihw virtio-scsi-pci --scsi0 local:9000/vm-9000-disk-0.raw
|
||||
qm set 9000 --ide0 local:cloudinit
|
||||
qm set 9000 --boot c --bootdisk scsi0
|
||||
qm set 9000 --serial0 socket --vga serial0
|
||||
qm set 9000 --cicustom "user=local:snippets/9000_bootstrap"
|
||||
qm set 9000 --ipconfig0 ip=dhcp,ip6=dhcp
|
||||
|
||||
qm start 9000
|
||||
sleep 10;while :; do qm status 9000|grep -q stopped && break; done
|
||||
qm set 9000 --cicustom ""
|
||||
qm set 9000 --ipconfig0 ""
|
||||
qm template 9000
|
||||
```
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue