Proxmox uses LXC containers rather than the more commonly heard of Docker containers. LXC containers can be thought of as very lightweight virtual machines. LXC containers can be customized to run an application but typically their images are for linux operating systems.

Adding a template

There are two methods for adding an LXC container template to Proxmox. The first is very convenient but requires Proxmox to be connected to the internet. The second is not as convenient but still easy enough and can be done if you are not connecting your server to the public internet.

For either method, navigate to your local storage location on the left sidebar. Next select Content on the left sidebar in the main window. This location will list all of the files available for creating VMs or containers. At the top of this list will be the Templates and Upload buttons.

Selecting the Templates button will use the first method and have Proxmox download a template itself. A window will open and give you a list of available templates. You can search or sort this list and choose the linux distro you are most familiar with and clicking the download button. A window will open with the download status and a URL to the location the template is being downloaded from.

If your server does not have an internet connection, then you must manually download the template to your local machine. You can use the previous method to get a URL for downloading the template from. Once on your local machine, you go to the same local content location and choose the Upload button. Point the popup to your downloaded template and select Container Template as the Content type.

Creating the container

Now we are ready to actually create the container. From any location in the Proxmox GUI, select Create CT in the top right. A window will popup to walk you through the container creation process.

General

Here you will add general information about your container. The Node and CT ID are required fields that are already filled in for you. You will need to add a Hostname and Password for the container. The hostname is a convenient human readable name for the container. It can be whatever you like.

Template

This is where you choose the template you previously downloaded. You can also change the storage location if you have more setup.

Root Disk

This will define the hard drive information for your container. Depending on the application of your container, you will probably want to increase the Disk size (GiB).

CPU

Specify the number of cores your would like to have your container use.

Memory

This the RAM used by the container. If your are using a computer with a lot of spare memory, then you can set the Memory (MiB) value pretty high. The Swap (MiB) value was set up for older systems and can stay at 512 as it is not really needed anymore. Basically, if your physical memory is used up then the system will use this amount of hard drive memory to compensate.

Network

This is the tab where settings are not as obvious. You are presented with options for an IPv4 and IPv6 address. You may pick DHCP for these values but then your container will have a different IP every time it boots. If your would like to connect to this container then that would cause some problems.

Alternatively, you can set a static IP. This will make the container use the same IP every time it boots. You will need to add /24 to define the address in CIDR format. An example of this format might be 192.168.1.2/24. The subnet number (/24) in the address says that the first 24 bits (192.168.1) are of the network number and the last part (2) is part of the host address.

DNS

You are fine to use the host settings for this section.

Confirm

Look over all of your settings and make sure you are happy before clicking the Finish button.

Finishing Up

The container is now ready to be launched. There are a few more things that are nice to know about before doing so. These options can be found after selecting your container in the left sidebar of the Proxmox GUI.

Starting on boot

Depending on what you are running in your container, you may want it to be started every time the server boots. This setting is not part of the previous setup window. You can access the container’s options by selecting Options in the sidebar of the main window. The top option will be whether the container starts at boot.

Starting the container

At the top of the main window are buttons to Start and Shutdown the container. The Shutdown button also contains a dropdown to allow you to Stop the container if it is having problems shutting down.

Working with the container

The last area to make not of the Console button. This button will open a console to the container. This console is created using javascript and leaves some room for improvement. There are alternative methods of connecting that can be looked into if desired.

Creating an LXC container

Proxmox uses LXC containers rather than the more commonly heard of Docker containers. LXC containers can be thought of as very lightweight virtual machines. LXC containers can be customized to run an application but typically their images are for linux operating systems.

Adding a template

There are two methods for adding an LXC container template to Proxmox. The first is very convenient but requires Proxmox to be connected to the internet. The second is not as convenient but still easy enough and can be done if you are not connecting your server to the public internet.

For either method, navigate to your local storage location on the left sidebar. Next select Content on the left sidebar in the main window. This location will list all of the files available for creating VMs or containers. At the top of this list will be the Templates and Upload buttons.

Selecting the Templates button will use the first method and have Proxmox download a template itself. A window will open and give you a list of available templates. You can search or sort this list and choose the linux distro you are most familiar with and clicking the download button. A window will open with the download status and a URL to the location the template is being downloaded from.

If your server does not have an internet connection, then you must manually download the template to your local machine. You can use the previous method to get a URL for downloading the template from. Once on your local machine, you go to the same local content location and choose the Upload button. Point the popup to your downloaded template and select Container Template as the Content type.

Creating the container

Now we are ready to actually create the container. From any location in the Proxmox GUI, select Create CT in the top right. A window will popup to walk you through the container creation process.

General

Here you will add general information about your container. The Node and CT ID are required fields that are already filled in for you. You will need to add a Hostname and Password for the container. The hostname is a convenient human readable name for the container. It can be whatever you like.

Template

This is where you choose the template you previously downloaded. You can also change the storage location if you have more setup.

Root Disk

This will define the hard drive information for your container. Depending on the application of your container, you will probably want to increase the Disk size (GiB).

CPU

Specify the number of cores your would like to have your container use.

Memory

This the RAM used by the container. If your are using a computer with a lot of spare memory, then you can set the Memory (MiB) value pretty high. The Swap (MiB) value was set up for older systems and can stay at 512 as it is not really needed anymore. Basically, if your physical memory is used up then the system will use this amount of hard drive memory to compensate.

Network

This is the tab where settings are not as obvious. You are presented with options for an IPv4 and IPv6 address. You may pick DHCP for these values but then your container will have a different IP every time it boots. If your would like to connect to this container then that would cause some problems.

Alternatively, you can set a static IP. This will make the container use the same IP every time it boots. You will need to add /24 to define the address in CIDR format. An example of this format might be 192.168.1.2/24. The subnet number (/24) in the address says that the first 24 bits (192.168.1) are of the network number and the last part (2) is part of the host address.

DNS

You are fine to use the host settings for this section.

Confirm

Look over all of your settings and make sure you are happy before clicking the Finish button.

Finishing Up

The container is now ready to be launched. There are a few more things that are nice to know about before doing so. These options can be found after selecting your container in the left sidebar of the Proxmox GUI.

Starting on boot

Depending on what you are running in your container, you may want it to be started every time the server boots. This setting is not part of the previous setup window. You can access the container’s options by selecting Options in the sidebar of the main window. The top option will be whether the container starts at boot.

Starting the container

At the top of the main window are buttons to Start and Shutdown the container. The Shutdown button also contains a dropdown to allow you to Stop the container if it is having problems shutting down.

Working with the container

The last area to make not of the Console button. This button will open a console to the container. This console is created using javascript and leaves some room for improvement. There are alternative methods of connecting that can be looked into if desired.