DevEnv 开源版 是一个轻量级的开发环境自动化配置工具,帮助开发者快速搭建和配置开发环境。通过简洁的 Web 界面,您可以轻松选择所需的开发工具,生成自动化安装脚本,一键完成开发环境的部署。
- 精选软件库:包含常用的开发工具和软件包
- 分类浏览:按开发语言、工具类型等分类查看
- 智能搜索:支持按名称快速搜索软件
- 批量选择:支持多软件批量添加和管理
- 跨平台支持:Windows、Linux、macOS 三大平台
- 自定义配置:可配置安装路径、镜像源等参数
- 模拟脚本生成:开源版提供脚本生成演示功能
- 简洁易用:一键生成可执行的安装脚本
- 用户注册登录:基于JWT的安全认证
- 个人资料管理:管理基本个人信息
- 轻量化设计:专注核心功能,简化用户体验
- Java 17 + Spring Boot 3.x
- Spring Security - 安全认证框架
- Spring Data JPA - 数据持久化
- MySQL 8.0 - 主数据库
- Redis - 缓存和会话存储
- Maven - 项目构建管理
- Vue.js 3 + Composition API
- Element Plus - UI 组件库
- Pinia - 状态管理
- Vue Router - 路由管理
- Axios - HTTP 请求库
- Vite - 构建工具
- Docker + Docker Compose
- Nginx - 反向代理和静态文件服务
- Docker >= 20.10 和 Docker Compose >= 2.0(推荐)
- 或者:Node.js >= 18.0.0, Java >= 17, MySQL >= 8.0, Redis >= 6.0
- 克隆项目
git clone https://github.com/devenv-project/devenv-opensource.git
cd devenv-opensource
- 启动所有服务
# 启动所有服务(首次运行会自动构建镜像)
docker-compose up -d
# 查看运行状态
docker-compose ps
- 访问应用
- 🌐 前端地址:http://localhost:3000
- 🔧 后端API:http://localhost:8081/api
- 🗄️ 数据库端口:localhost:3307
# 停止所有服务
docker-compose down
# 清理数据(可选,会删除所有数据)
docker-compose down -v
点击展开本地开发部署说明
- 准备数据库
CREATE DATABASE devenv_opensource CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'devenv'@'localhost' IDENTIFIED BY 'devenv123';
GRANT ALL PRIVILEGES ON devenv_opensource.* TO 'devenv'@'localhost';
FLUSH PRIVILEGES;
- 启动 Redis
# 使用 Docker 启动 Redis
docker run -d --name redis -p 6379:6379 redis:7-alpine
- 配置后端
cd backend
# 修改 application.yml 中的数据库连接信息(如需要)
- 启动后端服务
# 使用 Maven 启动
./mvnw spring-boot:run
- 安装依赖
cd frontend
npm install
- 启动开发服务器
npm run dev
- 🌐 访问 http://localhost:3000
- 📝 点击"注册"创建新账户
- 🔐 使用用户名和密码登录系统
- 📋 在软件选择页面浏览可用软件
- 🔍 使用搜索功能快速找到所需软件
- ➕ 点击软件卡片添加到选择列表
- 🏷️ 支持按分类筛选和批量操作
- ⚙️ 在脚本生成页面配置安装参数
- 🖥️ 选择目标操作系统
- 📁 设置安装路径
- 🚀 点击"生成脚本"查看结果
- 👤 在个人中心管理基本信息
- 🔧 查看和编辑个人资料
- 📊 查看账户统计信息
所有服务配置都在 docker-compose.yml
中:
services:
mysql:
ports:
- "3307:3306" # 外部端口:内部端口
redis:
ports:
- "6379:6379"
backend:
ports:
- "8081:8080" # 后端服务端口
frontend:
ports:
- "3000:3000" # 前端服务端口
- MySQL数据:存储在 Docker volume
mysql-data
中 - Redis数据:存储在 Docker volume
redis-data
中 - 应用日志:存储在
./logs/
目录中
devenv-opensource/
├── 📁 backend/ # 后端 Spring Boot 应用
│ ├── 📁 src/main/java/ # Java 源码
│ ├── 📁 src/main/resources/ # 配置文件和静态资源
│ └── 📄 pom.xml # Maven 配置
├── 📁 frontend/ # 前端 Vue.js 应用
│ ├── 📁 src/ # Vue.js 源码
│ ├── 📁 public/ # 静态资源
│ └── 📄 package.json # npm 配置
├── 📁 database/ # 数据库初始化脚本
├── 📁 config/ # 配置文件
├── 📁 data/ # 应用数据文件
└── 📄 docker-compose.yml # Docker 编排文件
- 数据库密码:
devenv123
(生产环境请修改) - JWT 密钥:自动生成(存储在配置文件中)
- 端口暴露:仅暴露必要的服务端口
- 🔐 修改所有默认密码
- 🌐 使用 HTTPS 和域名访问
- 🛡️ 配置防火墙规则
- 🔄 定期备份数据
我们欢迎各种形式的贡献!
- Fork 项目到您的 GitHub
- 创建特性分支 (
git checkout -b feature/AmazingFeature
) - 提交更改 (
git commit -m 'Add AmazingFeature'
) - 推送到分支 (
git push origin feature/AmazingFeature
) - 创建 Pull Request
Q: 容器启动失败怎么办?
A: 请检查:
- Docker 和 Docker Compose 是否正确安装
- 端口 3000、3307、6379、8081 是否被占用
- 查看容器日志:
docker-compose logs [service-name]
Q: 如何添加新的软件包?
A: 编辑 backend/src/main/resources/data/software-samples.json
文件,添加新的软件信息,然后重启后端服务。
Q: 如何备份数据?
A:
# 备份数据库
docker exec devenv-opensource-mysql mysqldump -u devenv -pdevenv123 devenv_opensource > backup.sql
# 备份 Docker volumes
docker run --rm -v mysql-data:/data -v $(pwd):/backup ubuntu tar czf /backup/mysql-backup.tar.gz /data
Q: 开源版和完整版有什么区别?
A: 开源版专注于核心功能:
- ✅ 软件选择和浏览
- ✅ 基本用户系统
- ✅ 脚本生成演示
- ❌ 高级统计分析
- ❌ 企业级功能
- ❌ 商业支持
- 🎉 首次发布开源版本
- ✨ 基础软件选择功能
- 👤 用户注册登录系统
- 🐳 Docker 一键部署支持
- 📱 响应式界面设计
本项目基于 MIT 许可证 开源。
MIT 许可证是一个宽松的开源许可证,允许您:
- ✅ 商业使用
- ✅ 修改代码
- ✅ 分发
- ✅ 私人使用
如果这个项目对您有帮助,请:
- ⭐ 给项目点个 Star
- 🐛 报告问题和建议
- 🔧 贡献代码和文档
- 📢 分享给其他开发者
- 📧 Issues: GitHub Issues
- 💬 讨论: GitHub Discussions
DevEnv 开源版 - 让开发环境配置变得简单 🚀
Made with ❤️ by DevEnv Team