# Cloud Init Script This script automates the setup of a virtual machine using a cloud image in Proxmox, with options to create a template and override any existing virtual machine with the same ID. ## Usage You can execute this script directly using `curl` with the following commands: ### 1. **Default Storage (`proxmox`) and Default VM Name (`ubuntu-cloudinit2404`):** To run the script using the default storage (`proxmox`) and the default VM name (`ubuntu-cloudinit2404`): ```bash curl -sSL https://git.nixc.us/colin/cloud-init/raw/branch/main/install.sh | bash ``` ### 2. **Specify a Different Storage:** To specify a different storage (`local`) while using the default VM name (`ubuntu-cloudinit2404`): ```bash curl -sSL https://git.nixc.us/colin/cloud-init/raw/branch/main/install.sh | bash -s -- local ``` ### 3. **Specify a Different Cloud Image, VM Name, and Storage:** To specify a custom cloud image URL, image name, distribution name, version, and storage, the script expects the following parameters in order: 1. **Cloud Image URL**: The URL from where the cloud image will be downloaded. 2. **Image Name**: The name to save the downloaded image file. 3. **Distribution Name**: The name of the distribution (e.g., `ubuntu`, `debian`). 4. **Version**: The version of the distribution (e.g., `2404`, `11`). 5. **Storage**: The Proxmox storage location (e.g., `local`, `proxmox`). Example: ```bash curl -sSL https://git.nixc.us/colin/cloud-init/raw/branch/main/install.sh | bash -s -- https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img noble-server-cloudimg-amd64.img ubuntu 2404 local ``` This command does the following: - Downloads the cloud image from `https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img`. - Saves the image as `noble-server-cloudimg-amd64.img`. - Sets the distribution name as `ubuntu` and the version as `2404`. - Uses `local` as the Proxmox storage location. ## Manual Template Creation After configuring your VM, when you're ready, create a template using the following command: ```bash qm template ``` Where `` is the ID of the VM you created. No license or contributors are defined for this script.