89 lines
2.5 KiB
Markdown
89 lines
2.5 KiB
Markdown
|
|
# 服务器管理工具
|
|||
|
|
|
|||
|
|
一个基于PySide6的桌面应用程序,用于管理远程服务器连接和执行远程命令。
|
|||
|
|
|
|||
|
|
## 功能特性
|
|||
|
|
|
|||
|
|
### 服务器连接标签
|
|||
|
|
- 自动读取同目录下的config.json配置文件
|
|||
|
|
- 支持多个服务器配置的别名选择
|
|||
|
|
- 自动填充服务器信息(IP地址、端口、用户名、密码、项目名称)
|
|||
|
|
- Git配置(Git仓库URL、远程目录路径)
|
|||
|
|
- 支持保存和更新配置文件
|
|||
|
|
- SSH协议连接服务器并显示连接状态
|
|||
|
|
|
|||
|
|
### 远程命令标签
|
|||
|
|
- **安装Git**:检查并远程安装Git(如果未安装)
|
|||
|
|
- **拉取代码**:根据提供的URL拉取代码到指定路径
|
|||
|
|
- 显示操作状态和结果
|
|||
|
|
- 实时进度显示
|
|||
|
|
|
|||
|
|
## 安装和运行
|
|||
|
|
|
|||
|
|
### 1. 安装依赖
|
|||
|
|
```bash
|
|||
|
|
pip install -r requirements.txt
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2. 配置服务器信息
|
|||
|
|
编辑`config.json`文件,添加您的服务器连接信息:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"servers": [
|
|||
|
|
{
|
|||
|
|
"alias": "服务器别名",
|
|||
|
|
"host": "服务器IP地址",
|
|||
|
|
"port": 22,
|
|||
|
|
"username": "用户名",
|
|||
|
|
"password": "密码",
|
|||
|
|
"project_name": "项目名称"
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3. 运行程序
|
|||
|
|
```bash
|
|||
|
|
python main.py
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 使用说明
|
|||
|
|
|
|||
|
|
### 使用说明
|
|||
|
|
|
|||
|
|
### 服务器连接
|
|||
|
|
1. 从下拉列表选择服务器别名,程序会自动填充连接信息
|
|||
|
|
2. 填写Git配置信息(Git仓库URL、远程目录路径)
|
|||
|
|
3. 点击"保存配置"按钮可以保存或更新服务器配置
|
|||
|
|
4. 点击"连接服务器"按钮建立SSH连接
|
|||
|
|
5. 连接状态会显示在界面底部
|
|||
|
|
|
|||
|
|
### 远程命令
|
|||
|
|
1. 确保已成功连接服务器
|
|||
|
|
2. **安装Git**:点击"安装Git"按钮检查并安装Git(如果未安装)
|
|||
|
|
3. **拉取代码**:
|
|||
|
|
- 仓库URL和项目路径会根据服务器配置自动填充
|
|||
|
|
- 如需修改,可以在"仓库URL"输入框中输入Git仓库地址
|
|||
|
|
- 在"项目路径"输入框中输入服务器上的目标路径
|
|||
|
|
- 点击"拉取代码"按钮开始拉取代码
|
|||
|
|
4. **查看目录**:点击"ls -al"按钮可以查看指定目录的详细内容
|
|||
|
|
5. 操作结果会显示在输出区域
|
|||
|
|
|
|||
|
|
## 注意事项
|
|||
|
|
- 确保服务器支持SSH连接
|
|||
|
|
- 确保提供的用户名和密码正确
|
|||
|
|
- 确保服务器有足够的权限安装软件和创建目录
|
|||
|
|
- 程序会自动检测并安装Git(如果未安装)
|
|||
|
|
|
|||
|
|
## 技术栈
|
|||
|
|
- **GUI框架**: PySide6
|
|||
|
|
- **SSH连接**: paramiko
|
|||
|
|
- **日志记录**: loguru
|
|||
|
|
- **目标服务器**: Ubuntu Linux
|
|||
|
|
|
|||
|
|
## 界面预览
|
|||
|
|
程序采用现代化的界面设计,包含:\- 美观的标签页布局
|
|||
|
|
- 直观的表单输入
|
|||
|
|
- 实时状态反馈
|
|||
|
|
- 进度条显示
|
|||
|
|
- 彩色状态指示
|