How to Attach a Custom ISO to a Vultr Optimized Cloud Compute Instance

Updated on 10 September, 2025

A feature that allows you to upload and attach your own ISO image to Vultr instances for custom operating system installations.


ISO images allow you to install a specific operating system on an Vultr Optimized Cloud Compute instance. Custom ISOs enable you to deploy operating systems not available in the default Vultr installer list. They are useful for creating tailored environments or booting into specialized modes, such as rescue and recovery environments.

Follow this guide to attach a custom ISO to a Vultr Optimized Cloud Compute instance using the Vultr Customer Portal, API, CLI, or Terraform.

Warning
Installing a custom ISO on a Vultr Optimized Cloud Compute instance disables the default user credentials listed in your instance's management page.
  • Vultr Customer Portal
  • Vultr API
  • Vultr CLI
  • Terraform
  1. Navigate to Products and click Compute.
  2. Click your target Vultr Optimized Cloud Compute instance to open its management page.
  3. Navigate to the Settings tab.
  4. Find and click Custom ISO on the left navigation menu.
  5. Select a custom ISO available in your Vultr account or click the ISO Library drop-down to select from a list of public ISOs.
  6. Click Attach ISO and Reboot to attach the ISO to your instance.
  1. Send a GET request to the List Instances endpoint and note your target instance's ID.

    console
    $ curl "https://api.vultr.com/v2/instances" \
      -X GET \
      -H "Authorization: Bearer ${VULTR_API_KEY}"
    
  2. Send a GET request to the List ISOs endpoint and note your target ISO ID.

    console
    $ curl "https://api.vultr.com/v2/iso" \
      -X GET \
      -H "Authorization: Bearer ${VULTR_API_KEY}"
    
  3. Send a POST request to the Attach ISO to Instance endpoint to attach the ISO to your target instance.

    console
    $ curl "https://api.vultr.com/v2/instances/{instance-id}/iso/attach" \
      -X POST \
      -H "Authorization: Bearer ${VULTR_API_KEY}" \
      -H "Content-Type: application/json" \
      --data '{
        "iso_id" : "<iso-id>"
      }'
    
  1. List all available instances and note your target instance's ID.

    console
    $ vultr-cli instance list
    
  2. List all available ISO images and note your target ISO's ID.

    console
    $ vultr-cli iso list
    
  3. Attach the ISO to your target instance.

    $ vultr-cli instance iso attach <instance-id> \
                --iso-id="<iso-id>"
  1. Open your Terraform configuration for the existing Optimized Cloud Compute instance.

  2. Specify the ISO by its os_id when defining or rebuilding the instance.

    terraform
    # Example: attach a custom ISO by its ID (replace 159 with your ISO ID)
    resource "vultr_instance" "occ" {
        label    = "occ-custom-iso"
        region   = "del"
        plan     = "vhp-2c-4gb"
        os_id    = 159                 # 'Custom' ISO type
        iso_id   = "your-iso-id-here"  # ID of uploaded or library ISO
        hostname = "occ-custom-iso"
    }
    
  3. Apply the configuration and observe the following output:

    Apply complete! Resources: 0 added, 1 changed, 0 destroyed.
Note
Terraform does not currently support attaching an ISO in-place to a running instance.
The ISO must be set at create time or during a rebuild, which replaces the instance and wipes all existing data.

Comments

No comments yet.