~20 minutes to a faster, cleaner, and more private network.
Setting up Pi-hole was quick and straightforward, with an excellent effort-to-benefit ratio. Deploying it on my Proxmox server was seamless. For this setup, I used a Debian container due to its lightweight resource usage compared to a full virtual machine or Docker container.
I allocated 4 GB of storage and 2 GB of RAM to the container, which is more than sufficient based on Pi-hole’s requirements. I also assigned a static IP address (192.168.1.12/24), which is essential for consistent network use later on.
Once the container was created, I performed a quick system update before proceeding with the installation.
Using the official Pi-hole documentation, I retrieved the installation commands and started the setup process:
wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh
After installation, Pi-hole provides access details for the admin web interface, along with a randomly generated password. The default blocklist configured during setup makes it easy to get started. After adjusting DNS settings, Pi-hole was immediately functional.
To test the setup, I pointed a device on my network to the container’s static IP address. I then visited websites known for displaying ads to confirm that Pi-hole was successfully blocking them.
This was further verified by observing increasing statistics in the Pi-hole admin dashboard.
With everything working as expected, the final step was to update my router’s DNS settings to use the Pi-hole server. Once devices on the network renew their DNS configuration, they automatically begin using Pi-hole.
To speed up this process for testing, I manually released and renewed my DNS configuration using the command prompt.