# scp-deploy **Repository Path**: f5l5y5/scp-deploy ## Basic Information - **Project Name**: scp-deploy - **Description**: No description available - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-06 - **Last Updated**: 2025-06-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 自动化部署工具 基于SSH2实现的自动化部署系统,支持多项目多环境配置和实时上传进度监控。 ## 主要功能 - 🚀 多环境配置管理(测试/生产) - 📁 递归上传整个目录结构 - 📊 实时显示文件传输进度 - 🔒 密码加密存储支持 - ✅ 自动创建远程目录 ## 快速开始 ```bash # 安装依赖 npm install ssh2 ora inquirer # 启动部署 node index.js ``` ## 配置文件示例 `projectConfig.json` ```json { "projectA": { "src": "./dist", "envConfig": { "test": { "host": "test.example.com", "port": 22, "username": "deploy_user", "password": "test123", "path": "/var/www/test/" }, "production": { "host": "prod.example.com", "path": "/var/www/prod/" } } } } ``` ## 使用说明 1. 运行后会依次选择: - 项目名称(自动读取配置) - 部署环境(test/production) 2. 系统将自动: - 连接目标服务器 - 创建必要目录 - 上传所有文件并显示实时进度 ## 注意事项 1. 路径配置要求: - 本地路径使用相对路径(如`./dist`) - 服务器路径使用绝对路径(如`/var/www/`) 2. 端口默认22,不同环境可单独配置 3. 密码字段建议使用环境变量加密 4. 支持上传10GB+大文件 ## 依赖库 - [ssh2](https://github.com/mscdex/ssh2) - SFTP客户端 - [ora](https://github.com/sindresorhus/ora) - 进度指示器 - [inquirer](https://github.com/SBoudrias/Inquirer.js) - 交互式命令行 ## 许可证 MIT Licensed. 更多细节参见 LICENSE 文件。