Now that we have the basics of our home lab up and running (check out the entire Build Your Homelab series), including an NGINX reserve proxy that is properly isolated, our own Technitium DNS and some rudimentary monitoring with Prometheusand Grafana, we can start installing some goodies for our home lab. Most of the apps and services we going to install will run as a docker container. This is not a problem as we have two options for running Docker in our Proxmox environment. We can install either an LXC container or a VM. The choice of which to use is up to each user (check out the differences between LXC and VM) so we will cover the installation of Docker via both options. This article will cover Docker in an LXC Container and a future article will cover Docker in a VM.
What is Docker?
Docker is a platform that allows developers to build, package, and run applications in lightweight, portable containers. These containers bundle everything an application needs—code, runtime, libraries, and dependencies—ensuring it runs consistently across different environments. Unlike traditional virtual machines, Docker containers share the host operating system, making them more efficient and faster to start. This makes Docker a popular choice for software development, testing, and deployment, enabling developers to streamline workflows and improve scalability. Read our in-depth article on Docker. But yes, in short, Docker is a virtualisation platform that we are running in Proxmox, a virtualisation platform. So this makes me feel like

Step 1: Get Docker LXC Command
Once again, we are going to use the amazing helper-scripts.com. When searching for Docker, we will be given two options. One is an LXC and one is a VM. We need to choose the LXC option. Once on the screen, we need to also select whether we want to use the default config or the lightweight Alpine Linus version. Again, this is your choice, we are going with the default. So we need to copy the command:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/docker.sh)"
Open up your Proxmox node at the IP Address set up during installation and log in. In the left navigation pane, expand Datacenter, and select the Proxmox node we want to install the Docker LXC on. In the middle navigation pane, select
. In the integrated shell window that open in the main window, paste the command and press enter. We are not going to use the default installation as 4Gb of disk space will be filled fairly quickly if you have a lot of containers running, so we are going to do a manual installation.
Step 2: Docker LXC Container Installation
Once in the integrated shell, paste the command that you need to run and press enter. The installation will start and you will be taken through the installation steps:
The installation will now run and take a short time to complete. Once the installation is complete, you will see the IP address of the new LXC Container. Once done you will be prompted to install Portainer as well as Portainer Service. You are welcome to install it, we will manually install Portainer in a future article, so if you want to skip ahead, select Y for both options.
Conclusion
With Docker successfully installed in an LXC container on our Proxmox environment, we now have a solid foundation for running and managing our home lab applications. This setup allows for efficient resource usage while maintaining flexibility in containerized deployments. In the next article, we’ll cover installing Docker in a Proxmox VM, providing another approach for those who prefer full virtualization. Stay tuned as we continue expanding our home lab with powerful tools and services!




































