Proxmox VE 6.x release includes a feature to add custom cloud-init configs. Unfortunately there is poor documentation, so I had to figure this out by adding pieces of information together.
The cloud-init files need to be stored in a snippet. This is not very well documented:
- Go to
Storage View -> Storage -> Add -> Directory
- Give it an ID such as
snippets
, and specify any path on your host such as/snippets
- Under
Content
chooseSnippets
and de-selectDisk image
(optional) - Upload (scp/rsync/whatever) your
user-data, meta-data, network-config
files to your proxmox server in/snippets/snippets/
(the directory should be there if you followed steps 1-3)