# 🚀 LiteOps - 轻量级DevOps平台 LiteOps Logo **简单、高效的CI/CD解决方案**

Vue 3 Django MySQL Docker

# 项目介绍 **注意根据GitHub源码内容为最新版本,官网和DockerHub更新稍慢** ## LiteOps CICD 平台概述 LiteOps是一个实用型的CI/CD平台。它并非追求大而全的DevOps解决方案,而是聚焦于团队日常工作中真正需要的自动化构建、和部署功能,帮助开发团队提高效率,减少重复性工作。 ## 项目特点 LiteOps的核心特点是"实用、贴合需求、易于使用": - **实用为先**:基于公司现有流程开发,解决实际问题,没有多余花里胡哨功能 - **贴合需求**:针对团队缺少的功能进行定制开发,填补工作流程中的空白 - **易于使用**:简洁直观的界面设计,降低使用门槛,减少学习成本,倾向于Jenkins 自由风格Job ## 功能预览
仪表板 项目列表
构建任务 构建需求
构建日志 构建历史1
构建历史2 构建历史3
系统设置 凭据配置
## 技术架构 LiteOps采用前后端分离的架构设计: ### 前端技术栈 - **Vue 3**:渐进式JavaScript框架 - **Ant Design Vue 4.x**:基于Vue的UI组件库 - **Axios**:基于Promise的HTTP客户端 - **Vue Router**:Vue官方路由管理器 - **echarts**:数据可视化图表库 ### 后端技术栈 - **Django 4.2**:Python Web框架 - **Django Channels**:WebSocket支持 - **MySQL 8**:关系型数据库 - **GitPython**:Git操作库 - **Python-GitLab**:GitLab API客户端 - **JWT认证**:用户身份验证 ### 部署架构 LiteOps采用容器化部署方案,主要包含以下组件: ``` ┌─────────────────────┐ ┌─────────────────────┐ │ Nginx (Port 80) │ │ Django (Port 8900) │ │ 静态文件服务 │◄───┤ 后端API服务 │ └─────────────────────┘ └─────────────────────┘ │ ┌─────────────────────┐ │ MySQL (Port 3306) │ │ 数据库服务 │ └─────────────────────┘ │ ┌─────────────────────┐ │ Docker in Docker │ │ CI/CD构建环境 │ └─────────────────────┘ ``` **部署特点**: - **Docker**:容器化部署,环境一致性 - **Docker in Docker**:支持CI/CD构建环境,完全隔离 - **一键部署**:自动化脚本部署,简化操作流程 - **多阶段构建**:优化镜像大小,提高构建效率 ## 项目目标 LiteOps的目标是解决团队在开发流程中的实际问题,具体包括: 1. 自动化团队中重复性高的构建和部署工作,节省人力成本 2. 标准化项目的构建流程,减少人为错误 3. 提供清晰的构建状态和日志,方便问题排查 4. 支持团队特有的部署需求,适应现有的服务器环境 5. 简化权限管理 ## 适用场景 LiteOps主要适用于以下场景: - 需要解决特定CI/CD痛点的开发团队 - 现有流程中缺少自动化构建和部署环节的项目 - 希望减少手动操作、提高效率的开发环境 - 对现有工具不满意,需要更贴合实际工作流程的解决方案 ## 🚀 快速部署 ### 前置要求 在开始部署之前,请确保你的系统满足以下要求: - **操作系统**:Linux (推荐 Ubuntu 20.04+、CentOS 7+) - **Docker**:版本 20.0+ - **Docker Compose**:版本 2.0+ - **磁盘空间**:至少 5GB 可用空间 - **内存**:推荐 4GB - **网络**:能够访问 Docker Hub 和相关软件源 ### 快速开始 #### 1. 获取部署文件 你需要获取以下部署文件: - `start-containers.sh` - 一键部署脚本 - `liteops_init.sql` - 数据库初始化文件 - `liteops` - Docker镜像 #### 2. 获取Docker镜像 ```bash # 拉取LiteOps镜像(如果有公开镜像仓库) docker pull liteops/liteops:v1 # 或者从提供的镜像文件加载 # docker load < liteops-v1.tar ``` #### 3. 准备部署文件 创建部署目录并放置必要文件: ```bash # 创建部署目录 mkdir liteops-deploy cd liteops-deploy # 将以下文件放入此目录: # - start-containers.sh # - liteops_init.sql ``` #### 4. 一键部署 使用提供的启动脚本进行自动化部署: ```bash # 给启动脚本执行权限 chmod +x start-containers.sh # 执行一键部署 ./start-containers.sh ``` 启动脚本会自动完成以下操作: #### 5. 验证部署 部署完成后,你可以通过以下方式验证: ```bash # 检查容器状态 docker ps # 检查日志 docker logs liteops 🐳 启动 Docker in Docker 环境... 🚀 启动 Docker daemon (轻量级CI/CD模式)... ⏳ 等待 Docker daemon 启动... time="2025-06-13T02:15:10.086745884Z" level=warning msg="CDI setup error /etc/cdi: failed to monitor for changes: no such file or directory" time="2025-06-13T02:15:10.086771075Z" level=warning msg="CDI setup error /var/run/cdi: failed to monitor for changes: no such file or directory" ✅ Docker daemon 启动成功 🔍 验证 Docker 功能... ✅ Docker daemon 版本: 28.2.2 ✅ 存储驱动: vfs 🎉 Docker in Docker 环境启动完成 (轻量级CI/CD模式) Starting nginx... Starting nginx: nginx. Starting backend service... INFO: Started server process [188] INFO: Waiting for application startup. INFO: ASGI 'lifespan' protocol appears unsupported. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:8900 (Press CTRL+C to quit) docker logs liteops-mysql ``` ### 访问应用 部署成功后,你可以通过以下地址访问: - **前端界面**:http://localhost - **后端API**:http://localhost:8900/api/ - **MySQL数据库**:localhost:3306 ### 默认登录信息 - **用户名**:admin - **密码**:admin123 (初始密码,可自行修改) ## 项目当前状态 LiteOps目前处于未完善状态,虽然核心功能已经初步实现,但仍有许多需求和功能有待完善,。我希望通过开放的方式收集更多的需求和建议,使这个项目能够更好地服务于实际开发场景。 ### 需求征集 我诚挚邀请你在查看[功能介绍文档](https://liteops.ext4.cn)和了解LiteOps后,提供宝贵的意见和建议: 功能介绍文档:https://liteops.ext4.cn - **功能需求**:你希望看到哪些新功能或改进? - **用户体验**:界面和操作流程是否符合你的使用习惯? - **实际场景**:在你的工作环境中,有哪些CI/CD痛点尚未解决? ## 📞 联系我 如果你对LiteOps有任何建议、问题或需求,欢迎通过以下方式联系我: - **邮箱**:hukdoesn@163.com - **GitHub Issues**:[提交问题或建议](https://github.com/hukdoesn/liteops/issues) Magic Gardens ---