使用 Docker 安裝 Pi-hole 的完整指南

最後更新: 30月2026

厭倦了每次上網或使用手機應用程式時都被廣告狂轟濫炸?別擔心,Pi-hole 提供了一個絕佳的解決方案,它本質上是一個智慧 DNS 過濾器。最棒的是,你無需在家裡的每台設備上都安裝任何東西;該系​​統在你的網絡核心運行,在垃圾內容到達你的屏幕之前就將其攔截並屏蔽。

要建造這套系統,目前最明智的選擇是使用 Docker。透過將 Pi-hole 放在容器中,您可以避免佔用電腦作業系統資源,使更新變得極其簡單,並最大限度地發揮硬體的效能——無論是樹莓派、舊伺服器,甚至是運行 Ubuntu 或 Debian 的虛擬機器——而不會出現任何服務衝突。

使用 Pi-hole 攔截廣告
相關文章:
Pi-hole 廣告攔截完整指南

先決條件和場地準備

在深入了解之前,值得一提的是,Pi-hole 非常輕量級。流暢運行它只需要大約512 MB 的記憶體和 2 到 4 GB 的磁碟空間。至於作業系統,它與使用 systemd 或 sysvinit 的發行版完美相容,例如 Debian、Ubuntu、Fedora 或 Raspberry Pi OS。

網路是關鍵所在。為了確保系統能穩定運行,Pi-hole 需要一個靜態 IP 位址。如果您不想手動設定伺服器,可以在路由器上預留一個 IP 位址,這樣路由器就會始終為執行 Pi-hole 容器的電腦指派相同的位址。

  什麼是 Webminal:用於學習的線上 Linux 終端

使用 Docker 部署 Pi-hole

最簡單的設定方法是透過docker-compose.yml檔案。這種方法允許您一次定義所有配置。務必將磁碟區(例如 /etc/pihole 和 /etc-dnsmasq.d)對應到主機上的本機資料夾,這樣即使更新容器鏡像,也不會遺失所有設定或黑名單。

透明外殼中的樹莓派微型計算機,代表 Pi-hole 伺服器的硬體。
相關文章:
Pi-hole 和 Unbound 線上隱私權保護完整指南

在設定檔中,請注意連接埠設定。端口 53 是 DNS 服務的核心端口,必須保持空閒。如果容器無法啟動,很可能是主機上的sy​​stemd-resolved 或 dnsmasq 服務佔用了該連接埠。在這種情況下,您需要停用衝突的服務,或設定一個橋接器來重新導向流量。

如果您決定同時使用 Pi-hole 作為 DHCP 伺服器,請記得在 compose 的 cap_add 部分新增NET_ADMIN功能,並且最好使用主機網路模式 (network_mode: host) 以避免連線問題。

初始設定和存取管理

執行命令後 docker-compose up -d系統即將上線。若要存取控制面板,請透過您指派的連接埠(預設連接埠為 80,但您可以將其變更為 8080 或 89 以避免與其他 Web 伺服器衝突)連線至伺服器的 IP 位址。如果您沒有在環境變數中定義密碼… 網頁密碼系統會產生一個隨機值,您可以透過以下命令查看日誌來找到它。 docker logs pihole | grep random.

為了提高安全性,最好盡快更改密碼。您可以使用以下方式存取容器終端: docker exec -it pihole /bin/bash 並運行命令 pihole -a -p 設定一個自己容易記住但別人難以記住的密碼。

  學習 Python 程式設計的 5 個工具

上游過濾和DNS優化

為了確保 Pi-hole 在無法識別位址時知道該向哪個 DNS 伺服器查詢,您需要設定一個上游 DNS 伺服器。 Quad9 是一個非常可靠的選擇只需在 DNS 設定標籤中選擇其過濾的伺服器(例如 9.9.9.9)。這可以為您的瀏覽活動增加一層額外的安全性和隱私保護。

Pi-hole 的核心在於其屏蔽清單。如果您想從可靠的清單開始,可以添加StevenBlack的清單。無論何時修改列表,無論是使用 SQLite3 刪除條目還是新增新的 URL,都必須前往「工具」選單並執行「更新 Gravity」命令,以便刷新資料庫並使變更生效。

進階技巧:本地域名和管理

如果您在家中使用多種服務,您可以建立 本地域名 為了避免記住 IP 位址,請建立一個名為 `.ip` 的檔案。 local.list 在已掛載的 Pi-hole 磁碟區上,定義 IP 和網域格式。然後,建立一個引用該清單的 dnsmasq 配置文件,並重新啟動容器。

無需訪問網站即可管理系統,您可以從主機運行一些非常有用的命令。例如,要將網域加入黑名單,請使用`pihole -b mydomain.com`;要暫時停用過濾 10 分鐘,可以使用`pihole disable 10m`,這在誤屏蔽合法網站時非常方便。

透過結合適中的硬體和 Docker 的靈活性,確保 53 連接埠暢通,並正確配置資料磁碟區以持久化數據,完全可以掌控家庭廣告。一旦您調整了路由器上的 DNS 設定並優化了 Gravity 列表,您就能在所有裝置上享受更流暢、更快速的網路體驗。

樹莓派開發板的特寫鏡頭,其電子元件、微晶片和連接埠清晰可見,非常適合用來展示教學的主要硬體。
相關文章:
樹莓派上 AdGuard Home 安裝與優化完整指南