Proxmox Virtual En­vir­on­ment (Proxmox VE) lets you ef­fi­ciently manage virtual machines and con­tain­ers on Linux. This guide walks you through in­stalling Proxmox VE on Debian 12 (Bookworm) and getting it up and running.

Dedicated Server
Per­form­ance through in­nov­a­tion
  • En­ter­prise hardware
  • Con­fig­ur­able hardware equipment
  • ISO-certified data centres

Step 1: Prepare the server

Before you begin, make sure your server has suf­fi­cient resources. For a typical test or pro­duc­tion setup, a quad-core processor, 8 GB of RAM and 100 GB of disk space are re­com­men­ded as a minimum.

Ensure that Debian 12 has also been installed correctly and has an active internet con­nec­tion. Then update all packages to bring the system up to date before you install Proxmox.

sudo apt update && sudo apt upgrade -y
sudo reboot
bash
Tip

Unlike a dedicated (bare-metal) Proxmox in­stall­a­tion, in­stalling Proxmox on top of Debian 12 gives you full control over the operating system. You can install extra packages and services as needed while also be­ne­fit­ing from Debian’s proven stability.

Step 2: Add the Proxmox re­pos­it­ory

Proxmox isn’t included in Debian’s official package sources, so you’ll need to add its re­pos­it­ory manually. Start by importing the Proxmox GPG key:

sudo wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
bash

Next, add the Proxmox VE re­pos­it­ory:

echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" | sudo tee /etc/apt/sources.list.d/pve-install-repo.list
bash

Then update your package list:

sudo apt update
bash
Note

This guide in­ten­tion­ally uses the ‘no-sub­scrip­tion’ re­pos­it­ory from Proxmox, which is freely available and ideal for testing en­vir­on­ments, home labs or smaller pro­duc­tion systems. It includes all essential updates and security patches but doesn’t provide en­ter­prise-grade support or access to the En­ter­prise re­pos­it­ory. If you’re using Proxmox in a business setting, consider pur­chas­ing a sub­scrip­tion to receive regular verified updates and official support.

Step 3: Install the Proxmox kernel

Before setting up the Proxmox Virtual En­vir­on­ment, first install the Proxmox kernel, which is optimised for vir­tu­al­isa­tion and provides better per­form­ance and com­pat­ib­il­ity. You can do this using the following terminal commands:

sudo apt install proxmox-default-kernel -y
sudo reboot
bash

Step 4: Install Proxmox

Now install Proxmox VE and its core com­pon­ents. The command below installs all required packages auto­mat­ic­ally:

sudo apt install proxmox-ve postfix open-iscsi -y
bash

During in­stall­a­tion, you’ll be asked to configure Postfix. Select Internet Site and enter your server’s hostname. When the in­stall­a­tion finishes, restart the system:

sudo reboot
bash

Step 5: Remove un­ne­ces­sary Debian kernels

After in­stall­a­tion, your system uses the new Proxmox kernel, which is based on Debian but optimised for vir­tu­al­isa­tion. To avoid boot menu clutter and potential conflicts, remove the default Debian kernel (usually linux-image-amd64). This keeps your system clean and helps prevent possible issues during future updates.

Run the following commands:

sudo apt remove linux-image-amd64 linux-image-6.1* -y
sudo update-grub
bash

The first command removes unused Debian kernel packages. The second updates the boot­load­er, so the system boots with the Proxmox kernel by default. Then restart to load the new kernel:

sudo reboot
bash

After the reboot, check that the Proxmox kernel is active:

uname -r
bash

The output should now look something like this: 6.8.4-3-pve. If you see this kind of version label, it confirms the system is running the Proxmox kernel.

Step 6: Access the Proxmox web interface

Proxmox is now fully installed and ready for use. You can manage it entirely through its web interface, which you can access via any browser. To do so, open the browser of your choice and enter your server’s IP address, followed by the default port 8006 in the address bar. Use the HTTPS protocol, which encrypts the con­nec­tion by default and keeps data secure:

https://<YOUR-IP-ADDRESS>:8006/

Your browser may show a warning that the SSL cer­ti­fic­ate isn’t trusted. This is normal because Proxmox uses a self-signed cer­ti­fic­ate. Accept the warning to proceed. You’ll then see the Proxmox VE login page. Sign in as the user ‘root’ using your Debian password. Keep the Realm field set to Linux PAM standard authentication.

Note

If you have trouble accessing the Proxmox web interface through port 8006, a firewall might be blocking the con­nec­tion. Make sure this port is open in your firewall settings so that you can connect to the web interface.

After logging in, the Proxmox dashboard will appear. From here, you can:

  • Create and manage virtual machines and con­tain­ers
  • Configure storage and networks
  • Monitor system resources such as CPU, RAM and disk-space usage

Your in­stall­a­tion is now complete, and you can start creating your first virtual en­vir­on­ment.

Step 7: Adjust re­pos­it­or­ies and remove warning messages

After suc­cess­fully in­stalling Proxmox and logging in for the first time, you’ll see a message stating that no active sub­scrip­tion is available. This warning appears because the system is currently using the En­ter­prise re­pos­it­ory, which requires a valid support licence. As we’re working with the free no-sub­scrip­tion re­pos­it­ory, disable the En­ter­prise entry to remove the warning. To do so, use the following command:

sudo sed -i 's/^deb/#deb/' /etc/apt/sources.list.d/pve-enterprise.list
bash

This de­ac­tiv­ates the line in the re­pos­it­ory con­fig­ur­a­tion file, so that it’s ignored during future package updates. Next, update your package sources so that the system applies the changes:

sudo apt update
bash

This ad­just­ment doesn’t affect system stability. All it does is prevent Proxmox from dis­play­ing the licence warning at login while ensuring all future updates come from the pre­vi­ously con­figured ‘no-sub­scrip­tion’ re­pos­it­ory.

Step 8: Update the system and run a final check

To complete the in­stall­a­tion, make sure your system is fully up to date and all Proxmox services are running correctly. This will help avoid com­pat­ib­il­ity issues and ensure your en­vir­on­ment runs smoothly. First, update all installed packages using the following command:

sudo apt full-upgrade -y
bash

After com­plet­ing the update, it’s a good idea to check the status of the key Proxmox services. These processes are essential for the man­age­ment interface and vir­tu­al­isa­tion features to run smoothly:

sudo systemctl status pve-cluster
sudo systemctl status pvedaemon
sudo systemctl status pveproxy
bash

If all services show as active (running), your Proxmox Debian in­stall­a­tion is working correctly. The setup is now complete and your server is ready to go live. You can use the web interface to create virtual machines and con­tain­ers, configure networks and manage storage.

Once your en­vir­on­ment is up and running, you can expand Proxmox as needed – for example, by adding a Proxmox file server for cent­ral­ised storage access or a Proxmox backup server to protect your virtual machines and con­tain­ers.

Go to Main Menu