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 支持(Linux 下需额外安装
python3-tk)
通过 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 # 主界面框架与连接管理
│ ├── init.py # 数据库初始化窗口
│ ├── menu.py # 菜单栏
│ ├── settings.py # 设置模块
│ ├── win.py # 通用窗口组件
│ ├── api/ # API 客户端
│ │ └── client.py # InPanel HTTP API 封装
│ ├── utils/ # 工具模块
│ │ ├── connection_config.py # 连接配置管理
│ │ ├── dbcontent.py # 数据库内容
│ │ ├── functions.py # 通用函数
│ │ ├── global_variable.py # 全局变量
│ │ └── sqlite_helper.py # SQLite 数据库助手
│ ├── data/ # 数据文件
│ └── views/ # 视图模块
│ ├── common/ # 公共视图(关于、帮助)
│ ├── dashboard/ # 仪表盘
│ ├── service/ # 服务管理
│ ├── file/ # 文件管理
│ ├── database/ # 数据库管理
│ ├── site/ # 站点管理
│ ├── app/ # 应用管理
│ ├── tools/ # 系统工具
│ └── settings/ # 设置
├── scripts/ # 构建脚本
│ └── build_package.sh # pip 包构建脚本
├── resources/ # 资源文件(图标等)
├── test/ # 测试代码
├── pyproject.toml # pip 打包配置
├── 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 © 2018 - 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
inpanel_client-0.0.1.tar.gz
(93.0 kB
view details)
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.1.tar.gz.
File metadata
- Download URL: inpanel_client-0.0.1.tar.gz
- Upload date:
- Size: 93.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
45dd1647e2cbab8e9ec4ee0d24e7f1e6dd9133e5d3f5903f5090da966255067f
|
|
| MD5 |
d794877d902f8ffa94a0307db7c0f543
|
|
| BLAKE2b-256 |
07daf68fa04c74595563bbac475520b34388681c3ce4e95d65208742a98d6e4b
|
File details
Details for the file inpanel_client-0.0.1-py3-none-any.whl.
File metadata
- Download URL: inpanel_client-0.0.1-py3-none-any.whl
- Upload date:
- Size: 119.6 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 |
aa2490f873dd699c0880806314c237dd8d22985e78894a3d4fbb0ff076748046
|
|
| MD5 |
191a7d1d7372ed48b28d6c392c3042fa
|
|
| BLAKE2b-256 |
b1e0c377070d26a2aef3ee8b1e770df4364ca465d29bdb91b4f28c737aaf0f94
|