Pi-hole Panel 项目安装与使用教程
1. 项目目录结构及介绍
Pi-hole Panel 项目的目录结构如下:
pihole-panel/
├── .gitignore
├── Jenkinsfile
├── LICENSE
├── README.md
├── VERSION
├── pihole-checklist.txt
├── pihole-panel-latest.deb
├── pihole-panel.png
└── pihole-panel/
├── __init__.py
├── main.py
├── config.py
├── utils.py
└── ...
目录结构介绍
.gitignore
: Git 忽略文件,指定哪些文件或目录不需要被 Git 管理。Jenkinsfile
: Jenkins 持续集成配置文件。LICENSE
: 项目许可证文件,本项目使用 GPL-3.0 许可证。README.md
: 项目说明文件,包含项目的基本介绍、安装和使用说明。VERSION
: 项目版本文件,记录当前项目的版本号。pihole-checklist.txt
: Pi-hole 配置检查清单。pihole-panel-latest.deb
: 项目打包的 Debian 安装包。pihole-panel.png
: 项目图标文件。pihole-panel/
: 项目源代码目录,包含主要的 Python 文件和模块。
2. 项目启动文件介绍
项目的主要启动文件是 pihole-panel/main.py
。该文件负责初始化应用程序并启动 Pi-hole Panel 的图形用户界面。
main.py
文件介绍
# main.py
from pihole_panel import PiHolePanelApp
if __name__ == "__main__":
app = PiHolePanelApp()
app.run()
PiHolePanelApp
: 这是应用程序的主类,负责初始化 GTK3 界面并连接到 Pi-hole 服务器。app.run()
: 启动应用程序的主循环,显示图形界面并开始处理用户交互。
3. 项目的配置文件介绍
项目的配置文件主要位于 pihole-panel/config.py
中。该文件定义了应用程序的配置选项,包括 Pi-hole 服务器的连接信息、界面设置等。
config.py
文件介绍
# config.py
class Config:
PI_HOLE_HOSTS = ["http://pi.hole", "http://192.168.1.2"]
API_PASSWORD = "your_api_password"
UI_THEME = "default"
DEBUG_MODE = False
PI_HOLE_HOSTS
: 定义了连接的 Pi-hole 服务器地址列表。API_PASSWORD
: 连接 Pi-hole API 所需的密码。UI_THEME
: 设置应用程序的界面主题。DEBUG_MODE
: 是否启用调试模式,启用后会输出更多调试信息。
通过以上配置文件,用户可以自定义 Pi-hole Panel 的行为和外观,以适应不同的使用场景。