Skip to main content

InPanel Client - A Desktop Client for InPanel Server Management

Project description

InPanel Client

PyPI Python License

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               # 主界面框架、侧边栏导航与连接管理
│   ├── 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 Doujksdou@qq.com


协议

本项目基于 MIT License 开源发布。

Copyright © 2017 - 2026 Jackson Dou

Project details


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.2.tar.gz (93.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

inpanel_client-0.0.2-py3-none-any.whl (119.9 kB view details)

Uploaded Python 3

File details

Details for the file inpanel_client-0.0.2.tar.gz.

File metadata

  • Download URL: inpanel_client-0.0.2.tar.gz
  • Upload date:
  • Size: 93.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.11

File hashes

Hashes for inpanel_client-0.0.2.tar.gz
Algorithm Hash digest
SHA256 8bbdbff3351528e768669a2b58cb99c39ac719a9a6e1cb327963c0f77ef2c002
MD5 4b62d147ad6a6af36920d54e292f67cf
BLAKE2b-256 8eb6696c92482e2f100655cb505450cf0e0f46ed73e9bfd9c245a287b9429a93

See more details on using hashes here.

File details

Details for the file inpanel_client-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: inpanel_client-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 119.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.11

File hashes

Hashes for inpanel_client-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d87415522e864746f132a2b601a340c90d3886aac4f6b6551781c4b6dba9a996
MD5 19b6743d7ddea9736e63999431f06997
BLAKE2b-256 fadac1ac483c0f5f915b1d38bb4d160035a2e85611feafb8915df220d7eebee8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page