Step-by-Step Guide: How to Create a VM in Proxmox VE 8.3
Last updated: Mar 16, 2025
As a reminder, Proxmox Virtual Environment is a virtualization platform that lets you create Virtual Machines in container-based or in full virtualization. (If you missed the installation tutorial, it's right here).
The difference between these two technologies is that container-based will share their kernel with the Proxmox VE and will therefore generally require fewer resources than full virtualization and delivers better performance. As Proxmox is based on Linux, this mode is, of course, only available for Linux VMs. Full virtualization, on the other hand, lets you create virtual machines compatible with Windows and UNIX, and works like VMware ESXi or Hyper-V.
I will show here how to create both.
Creating a Debian Linux Container
Container Template
As containers work with templates, we first need to identify the storage spaces that are configured to host the container template. Note that any storage can host container images, it just need to be configured.
In my case, only local storage is configured to host the container template:
Go to one of the storage previously identified as the target of the container template and click on "CT Templates" > "Templates":
In the list of templates, select the Linux distribution you wish to install and click Download. Here's an example for Debian:
Once downloaded, you should see the template appear:
Create an LXC VM
Right-click on your hypervisor, then click to "Create CT". Give the container a name and select the previously downloaded template:
Select storage for VM disk, define the number of CPU and memory:
Select the network bridge, set the IP address and DNS, and finally click Finish to create the container:
A few moments later, the container should appear and be ready for use:
Full Virtualization
Upload the ISO
Before we can consider installing a virtual machine, we first need to download the ISO media to our Proxmox VE.
As with the containers, go to the storage menu to identify the storage where to upload the ISO images:
Go to one of the previously identified storage and click to Upload:
Upload each iso of the system for which you want to create a Virtual Machine. As we will need them later for Windows virtual machines, it's a good idea to also upload the VirtIO drivers, which you can find here: https://fedorapeople.org/groups/virt/virtio-win/. (Link for the latest stable version: https://fedorapeople.org/):
ISO images should appear after the upload. Here, for example, after uploading the Windows, Debian and VirtIO images:
Windows
Creating a Windows Virtual Machine
Now that we have uploaded the ISO images, let's start creating virtual machines, beginning with Windows.
Right-click on the hypervisor and click on Create VM. In the next window, give the VM a name and click Next. In the OS tab, select the previously uploaded ISO image, then select OS Type. Check the "Add additional driver for VirtIO drivers" and select the VirtIO image.
In the system tab, activate the Qemu agent and select storage for EFI and TPM. Set storage and virtual disk size.(Optional: set "Write back" as cache option for best performance (the "No cache" default is safer, but slower) and tick "Discard" to optimally use disk space (TRIM)). Change CPU settings if necessary.
Configure memory settings as needed, select the newtork bridge and click on Finish:
Install Windows
Once created, start the virtual machine from the Console menu:
Proceed with the Windows installation:
In the "Select location to install Windows Server" step click on "Load Driver":
Click on "Browse":
Select the "vioscsi\<WINDOWS_VERSION>\amd64" folder and confirm:
Select the "Red Hat VirtIO SCSI pass-through controller" and click Install:
Windows Post-Installation
After Windows installation, open the virtio-win drive and run the virtio-win-gt-x64 installer:
Install all suggested features:
Continue with the installation of virtio-win-guest-tools (required for the QEMU agent) then restart:
Congratulations, your Windows virtual machine is ready!
GNU/Linux
Creating a Debian Virtual Machine
Right-click on the hypervisor and click on Create VM. In the next window, give the VM a name and click Next. In the OS tab, select the previously uploaded ISO image, then select Linux as guest os.
In the system tab, activate the Qemu agent and select storage for EFI. Set storage and virtual disk size. (Optional: set "Write back" as cache option for best performance (the "No cache" default is safer, but slower) and tick "Discard" to optimally use disk space (TRIM)). Change CPU settings if necessary.
Configure memory settings as needed, select the network bridge and click on Finish:
Install Debian
Once created, start the virtual machine from the Console menu. It will automaticaly boot from the Debian installation media:
Debian Post-Installation
The Qemu agent should have been installed automatically, but if necessary, here are the commands you need to type to install it: