167 lines
2.9 KiB
Markdown
167 lines
2.9 KiB
Markdown
# SSH 管理器
|
||
|
||
这是一个适合按“源码 + Docker 部署”方式售卖的 SSH / SFTP 管理项目。
|
||
|
||
买家拿到后,不需要装 Windows 客户端,只要会用 Docker,就能按说明启动。后面如果要二开,也可以直接在源码上改。
|
||
|
||
## 这项目适合谁
|
||
|
||
- 经常连服务器的开发者
|
||
- 小团队运维
|
||
- NAS / 云主机用户
|
||
- 想找 FinalShell / MobaXterm 替代方案的人
|
||
|
||
## 这项目能做什么
|
||
|
||
- SSH 终端
|
||
- SFTP 文件管理
|
||
- 批量命令执行
|
||
- 连接和会话树备份恢复
|
||
- 历史日志与传输记录
|
||
- 默认管理员首次登录强制改密
|
||
|
||
## 建议怎么卖
|
||
|
||
建议你对外只卖这一种:
|
||
|
||
`源码交付 + Docker 部署版`
|
||
|
||
建议交付给买家的内容只有这几样:
|
||
|
||
1. 当前仓库源码
|
||
2. 这份 `README.md`
|
||
3. 默认账号说明
|
||
4. Docker 部署说明
|
||
|
||
不再提供 Windows 安装包,也不再提供双击启动脚本。
|
||
|
||
## 最简单的启动方式
|
||
|
||
先准备:
|
||
|
||
- Docker
|
||
- Docker Compose
|
||
|
||
在项目根目录执行:
|
||
|
||
```bash
|
||
docker compose -f docker/docker-compose.yml up -d --build
|
||
```
|
||
|
||
启动后访问:
|
||
|
||
`http://localhost:48080`
|
||
|
||
默认登录账号:
|
||
|
||
- 用户名:`admin`
|
||
- 密码:`admin123`
|
||
|
||
首次登录后请先修改密码。
|
||
|
||
## 常用命令
|
||
|
||
启动:
|
||
|
||
```bash
|
||
docker compose -f docker/docker-compose.yml up -d --build
|
||
```
|
||
|
||
查看日志:
|
||
|
||
```bash
|
||
docker compose -f docker/docker-compose.yml logs -f
|
||
```
|
||
|
||
停止:
|
||
|
||
```bash
|
||
docker compose -f docker/docker-compose.yml down
|
||
```
|
||
|
||
查看状态:
|
||
|
||
```bash
|
||
docker compose -f docker/docker-compose.yml ps
|
||
```
|
||
|
||
如果你习惯 `make`,也可以直接用:
|
||
|
||
```bash
|
||
make up
|
||
make logs
|
||
make down
|
||
```
|
||
|
||
## 数据会放在哪里
|
||
|
||
Docker 默认把数据放在命名卷 `app-data` 里。
|
||
|
||
日常停止服务用:
|
||
|
||
```bash
|
||
docker compose -f docker/docker-compose.yml down
|
||
```
|
||
|
||
不要执行:
|
||
|
||
```bash
|
||
docker compose -f docker/docker-compose.yml down -v
|
||
```
|
||
|
||
因为这会把数据一起删掉。
|
||
|
||
## 给买家时可以直接这样说
|
||
|
||
```text
|
||
这是源码交付 + Docker 部署版,不是练手 demo。
|
||
买回去后按说明执行一条 docker compose 命令就能跑起来。
|
||
支持 SSH、SFTP、批量命令、备份恢复,适合开发者、运维和 NAS 用户。
|
||
```
|
||
|
||
闲鱼商品文案见:
|
||
|
||
- `docs/xianyu-sales-copy.md`
|
||
|
||
## 如果你自己要开发
|
||
|
||
后端:
|
||
|
||
```bash
|
||
cd backend
|
||
mvn spring-boot:run
|
||
```
|
||
|
||
前端:
|
||
|
||
```bash
|
||
cd frontend
|
||
npm install
|
||
npm run dev
|
||
```
|
||
|
||
前端开发地址:
|
||
|
||
`http://localhost:5173`
|
||
|
||
后端开发地址:
|
||
|
||
`http://localhost:48080`
|
||
|
||
## 环境变量
|
||
|
||
- `SSHMANAGER_ENCRYPTION_KEY`:连接密码加密密钥
|
||
- `SSHMANAGER_JWT_SECRET`:JWT 密钥
|
||
- `DATA_DIR`:数据目录
|
||
|
||
Docker 默认已经在 `docker/docker-compose.yml` 里给了可运行示例。正式卖给客户时,建议你改成自己的密钥再交付。
|
||
|
||
## 发货前自己至少检查一遍
|
||
|
||
1. Docker 版能正常启动
|
||
2. 能正常登录并修改密码
|
||
3. 能创建一条连接
|
||
4. 能打开终端
|
||
5. 能打开 SFTP
|
||
6. 能导出一次备份
|