InPanel Client - A Desktop Client for InPanel Server Management
Project description
InPanel Client
InPanel —— 通过图形化界面远程管理 InPanel 服务器。
基于 Python Tkinter 构建,通过 HTTP API 与 InPanel 服务端通信,支持连接管理、系统监控、服务控制、文件管理、数据库管理、站点管理、系统工具等完整功能。
功能模块
仪表盘 (Dashboard)
- 系统运行状态概览
- CPU、内存、磁盘、网络实时监控
服务管理 (Services)
- 管理 Nginx、Apache、MySQL、Redis 等服务
- 启动 / 停止 / 重启 / 状态查看
- 服务安装与卸载
文件管理 (Files)
- 远程文件浏览、编辑、上传、下载
- 文件权限修改
- 回收站管理
数据库管理 (Databases)
- MySQL / MariaDB 数据库管理
- 数据库创建与删除
- 用户权限管理
站点管理 (Sites)
- 站点创建与配置
- Nginx / Apache 虚拟主机管理
应用管理 (Apps)
- 一键部署常用应用
- 应用状态管理
系统工具 (Tools)
| 工具 | 说明 |
|---|---|
| 网络管理 | 网络接口配置、主机名、DNS 设置 |
| 时间管理 | 系统时间、时区、NTP 同步 |
| 定时任务 | Cron 计划任务管理 |
| 用户管理 | 系统用户与用户组管理 |
| 进程管理 | 进程查看与终止 |
| 命令行终端 | 远程 Shell 命令执行 |
| 防火墙管理 | iptables / firewalld / ufw 规则管理 |
| 软件仓库 | 系统软件源配置 |
| SSL 证书 | 证书申请、续期、管理 |
| 磁盘管理 | 磁盘分区与挂载信息 |
设置 (Settings)
- 连接管理与切换
- 客户端偏好设置
安装
要求
- Python >= 3.6
- Tkinter 支持
注意: Windows 和 macOS 的 Python 官方安装包已自带 Tkinter,无需额外操作。
Linux 用户需要手动安装 tkinter:
| 系统 | 安装命令 |
|---|---|
| Debian / Ubuntu | sudo apt install python3-tk |
| RHEL / CentOS / Fedora | sudo dnf install python3-tkinter |
| Arch Linux | sudo pacman -S tk |
| Alpine | sudo apk add python3-tkinter |
安装后可验证:
python3 -c "import tkinter; print('tkinter OK')"
通过 pip 安装
pip install inpanel-client
安装完成后通过命令行启动:
inpanel-client
通过源码安装
git clone https://github.com/inpanel/inpanel-client.git
cd inpanel-client
pip install .
卸载
pip uninstall inpanel-client
开发说明
克隆项目
git clone https://github.com/inpanel/inpanel-client.git
cd inpanel-client
安装开发依赖
pip install -e .
项目结构
inpanel-client/
├── inpanel_client/ # 主包目录
│ ├── __init__.py # 包入口
│ ├── app.py # 程序入口,main() 函数
│ ├── inpanel.py # 主界面框架、侧边栏导航与连接管理
│ ├── api.py # InPanel HTTP API 客户端封装
│ ├── init.py # 数据库初始化窗口
│ ├── menu.py # 菜单栏
│ ├── settings.py # 设置模块
│ ├── win.py # 通用窗口组件(启动屏幕、编辑窗口等)
│ ├── utils/ # 工具模块
│ │ ├── connection_config.py # 连接配置管理(JSON 存储)
│ │ ├── dbcontent.py # 数据库内容操作
│ │ ├── functions.py # 通用函数(窗口居中、排序、弹窗基类)
│ │ ├── global_variable.py # 全局变量管理
│ │ └── sqlite_helper.py # SQLite 数据库助手
│ ├── data/ # 数据文件
│ │ ├── config.ini # 配置文件
│ │ ├── connection.json # 连接配置
│ │ ├── database.db # SQLite 数据库
│ │ └── image/ # 图片资源
│ └── views/ # 视图模块
│ ├── common/ # 公共视图(关于、帮助)
│ ├── dashboard/ # 仪表盘
│ ├── service/ # 服务管理
│ ├── file/ # 文件管理(含回收站)
│ ├── database/ # 数据库管理
│ ├── site/ # 站点管理
│ ├── app/ # 应用管理
│ ├── tools/ # 系统工具(网络/时间/定时任务/用户/进程/终端/防火墙/仓库/SSL/磁盘)
│ └── settings/ # 设置
├── scripts/ # 构建脚本
│ └── build_package.sh # pip 包构建脚本
├── resources/ # 资源文件(应用图标等)
├── test/ # 测试代码
├── pyproject.toml # pip 打包配置
├── build.spec # PyInstaller 桌面应用打包
├── build.sh # 桌面应用构建入口
├── setup.iss / exe.iss # Inno Setup Windows 安装包
├── InPanel.pkgproj # Packages macOS 安装包
├── requirements.txt # 依赖声明
└── LICENSE # MIT 开源协议
构建 pip 包
# 构建 sdist + wheel
./scripts/build_package.sh
# 仅构建 sdist
./scripts/build_package.sh sdist
# 仅构建 wheel
./scripts/build_package.sh wheel
# 构建并上传到 PyPI
./scripts/build_package.sh upload
# 构建并上传到 Test PyPI
./scripts/build_package.sh test
构建桌面应用
# macOS / Linux 桌面应用
pyinstaller build.spec
开发者
Jackson Dou — jksdou@qq.com
- 项目主页:https://inpanel.org
- 源码仓库:https://github.com/inpanel/inpanel-client
- 问题反馈:https://github.com/inpanel/inpanel-client/issues
协议
本项目基于 MIT License 开源发布。
Copyright © 2017 - 2026 Jackson Dou
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file inpanel_client-0.0.3.tar.gz.
File metadata
- Download URL: inpanel_client-0.0.3.tar.gz
- Upload date:
- Size: 93.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
378c8651fce62bc88416dc70724b3ac43fd519b3c25a9202167f4e72aef9f817
|
|
| MD5 |
eabf7f39d1fe638ca0ff3e62f2a49e9d
|
|
| BLAKE2b-256 |
15043c551f0271f0586bd49152f76cda1cf80db2e20f74fad2cb77cbe9442d6d
|
File details
Details for the file inpanel_client-0.0.3-py3-none-any.whl.
File metadata
- Download URL: inpanel_client-0.0.3-py3-none-any.whl
- Upload date:
- Size: 120.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
565caf1fb1d07df022a21d7f3b5aff56ecb985ec6084888adec5fce46bca5aac
|
|
| MD5 |
ff4d19937c37aa6f6e162c6a59bfa990
|
|
| BLAKE2b-256 |
c385b2de19ab2a8bdeb1a476b20ee9ab8043d6f7981cb5bf0d6e044d51014ca5
|