Default Proxmox Virtual Machine Template.

This will show how I set up a default VM in Proxmox. This will be converted to a template that can easily be cloned as many times as I like, saving the hassle of remaking a fresh container each time, with all the setting I always use.



Part 1:Creating the VM.

Note : If any option boxes have a coloured border, they are mandatory, any other options can be left as default.

You will see a spinning icon in the Tasks list below. When is says ‘OK’, your done and you can open a console. Make sure you have highlighted the correct VM in the far left menu and click on ‘>_console’ in the next panel or just below to ‘Create VM’ button. You can now install the OS as if on bare metal.

You now have a bare bones VM. Login in with the user setup during the install.


Part 2: Setup the Virtual Machine.

Cockpit

Add Cockpit to help with maintainance of the VM.

sudo apt install cockpit -y

When installed, you will be able to access Cockpit with the VM IP address and port :9090.

If you don’t want the use port :9090, you can change it.

Start by creating the directory:

sudo mkdir -p /etc/systemd/system/cockpit.socket.d/

Then create the configuration file:

sudo nano /etc/systemd/system/cockpit.socket.d/listen.conf

Then paste into the configuration file:

[Socket]
ListenStream=
ListenStream=443

then save & close the file with: Ctrl+O enter Ctrl+X.

Now you can access cockpit on port :443 instead of :9090.


Part 3: Converting to Template.

If you are now finished setting up the VM, you can convert it to a template ready to clone at a later date.


Part 4: Creating Virtual Machine from Template.

When ready to create a VM, select ‘Clone’ and it will create the VM with the next available number. You will need to edit the new VMs hostname and IP settings to differ from the original.


Part 5: Creating Jellyfin Server.

Jellyfin is a self hosted media server/player and organiser.

To Install: (All on one line)

curl https://repo.jellyfin.org/install-debuntu.sh | sudo bash

Note: If Jellyfin refuses to start, install ICULIB

sudo apt install libicu-dev

Then, restart Jellyfin with:

sudo systemctl restart jellyfin

Access in web browser with:

http//:container-ip-address:8096