update README.MD
This commit is contained in:
1 parent
657775bf27
commit
0b07fb2d80
3 files changed
+217
-141
No files matched your search
@@ -0,0 +1,112 @@
|
||||
# 部署指南
|
||||
|
||||
## Docker 部署
|
||||
|
||||
### 快速开始
|
||||
```bash
|
||||
# 一键部署
|
||||
./deploy.sh
|
||||
|
||||
# 访问应用
|
||||
http://localhost:3000
|
||||
```
|
||||
|
||||
### 部署脚本功能
|
||||
- 自动检查Docker环境
|
||||
- 清理现有容器和镜像
|
||||
- 生成生产环境配置文件
|
||||
- 构建Docker镜像
|
||||
- 启动服务并健康检查
|
||||
|
||||
### 环境变量
|
||||
部署脚本会自动生成 `.env.production` 文件:
|
||||
|
||||
```env
|
||||
# 数据库配置
|
||||
DB_HOST=mysql
|
||||
DB_PORT=3306
|
||||
DB_USER=webssh_user
|
||||
DB_PASSWORD=webssh_password
|
||||
DB_NAME=webssh
|
||||
|
||||
# JWT配置
|
||||
JWT_SECRET=<随机生成>
|
||||
|
||||
# 服务器配置
|
||||
PORT=3000
|
||||
NODE_ENV=production
|
||||
|
||||
# 加密密钥(32字节)
|
||||
ENCRYPTION_KEY=<随机生成>
|
||||
```
|
||||
|
||||
## 手动部署
|
||||
|
||||
### 环境要求
|
||||
- Node.js 16+
|
||||
- MySQL 5.7+
|
||||
|
||||
### 步骤
|
||||
|
||||
1. **安装依赖**
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
2. **数据库初始化**
|
||||
```bash
|
||||
mysql -u root -p < install.sql
|
||||
```
|
||||
|
||||
3. **环境配置**
|
||||
```bash
|
||||
cp backend/.env.example backend/.env
|
||||
# 编辑 backend/.env 文件
|
||||
```
|
||||
|
||||
4. **启动应用**
|
||||
```bash
|
||||
# 开发模式
|
||||
npm run dev
|
||||
|
||||
# 生产模式
|
||||
npm run build
|
||||
npm start
|
||||
```
|
||||
|
||||
### 端口配置
|
||||
- 前端:5173 (开发) / 3000 (生产)
|
||||
- 后端:3000
|
||||
- MySQL:3306
|
||||
|
||||
## 故障排除
|
||||
|
||||
### 常见问题
|
||||
|
||||
**Docker 部署问题**
|
||||
```bash
|
||||
# 检查服务状态
|
||||
docker compose ps
|
||||
|
||||
# 查看日志
|
||||
docker compose logs
|
||||
|
||||
# 重启服务
|
||||
docker compose restart
|
||||
```
|
||||
|
||||
**加密密钥错误**
|
||||
确保 ENCRYPTION_KEY 为32字节长度:
|
||||
```bash
|
||||
node -e "console.log(process.env.ENCRYPTION_KEY.length)"
|
||||
```
|
||||
|
||||
**数据库连接失败**
|
||||
检查MySQL服务状态和用户权限:
|
||||
```bash
|
||||
# 检查服务状态
|
||||
sudo systemctl status mysql
|
||||
|
||||
# 检查数据库连接
|
||||
mysql -u webssh_user -p webssh
|
||||
```
|
||||
@@ -0,0 +1,41 @@
|
||||
# 功能特性
|
||||
|
||||
## ✅ 已实现功能
|
||||
|
||||
### 用户认证系统
|
||||
- 用户注册(邮箱+密码)
|
||||
- 用户登录(JWT令牌认证)
|
||||
- 密码加密存储(bcrypt)
|
||||
- 路由守卫和权限控制
|
||||
|
||||
### 服务器资产管理
|
||||
- 服务器增删改查
|
||||
- 支持密码和私钥认证
|
||||
- AES-256加密存储敏感信息
|
||||
- 服务器分组管理
|
||||
- 树形结构展示
|
||||
|
||||
### SSH终端核心功能
|
||||
- 基于xterm.js的Web终端
|
||||
- WebSocket实时通信
|
||||
- SSH2库后端连接
|
||||
- 终端窗口自适应
|
||||
- 命令输入和输出
|
||||
- 快捷键支持(Ctrl+C等)
|
||||
|
||||
### 前端界面
|
||||
- Vue3 + Element Plus现代化界面
|
||||
- 响应式设计
|
||||
- 服务器管理面板
|
||||
- 终端界面
|
||||
- 快速连接功能
|
||||
|
||||
## 🔄 待实现功能
|
||||
|
||||
- [ ] SFTP文件传输功能
|
||||
- [ ] 多标签页支持
|
||||
- [ ] 分屏显示
|
||||
- [ ] 终端外观定制
|
||||
- [ ] 快捷命令功能
|
||||
- [ ] 连接保持和自动重连
|
||||
- [ ] 操作日志记录
|
||||
Reference in new issue
Block a user