Spug是一款功能强大的开源企业级运维自动化平台,它集成了资产管理、作业调度、配置管理、脚本执行等多种运维场景,能够帮助企业显著提升运维效率。本指南将详细介绍如何在Linux系统上完成Spug的完整部署。
🚀 环境准备与系统要求
在开始安装之前,请确保您的系统满足以下基本要求:
操作系统要求:
- Linux发行版(推荐CentOS 7+、Ubuntu 18.04+)
- 2GB以上内存
- 20GB以上磁盘空间
软件依赖:
- Python 3.6+
- Node.js 12.14+
- Git版本控制工具
📦 项目获取与源码准备
首先需要获取Spug项目的源代码:
# 克隆项目到本地
git clone https://gitcode.com/gh_mirrors/sp/spug.git
# 进入项目目录
cd spug
🔧 后端服务部署
安装Python依赖包
Spug后端基于Django框架开发,需要安装以下核心依赖:
# 进入后端目录
cd spug_api
# 安装Python依赖
pip install -r requirements.txt
主要依赖包括:
- Django 2.2.28 - Web框架
- channels 2.3.1 - WebSocket支持
- paramiko 2.11.0 - SSH连接库
- GitPython 3.1.41 - Git操作库
数据库初始化配置
Spug默认使用SQLite数据库,如需使用MySQL或PostgreSQL,请修改配置文件:
# 查看数据库配置
cat spug_api/spug/settings.py
运行数据库初始化命令:
# 初始化数据库结构
python manage.py initdb
启动后端服务
# 启动Django开发服务器
python manage.py runserver 0.0.0.0:8000
🎨 前端服务部署
安装Node.js依赖
# 进入前端目录
cd spug_web
# 安装项目依赖
npm install
构建前端应用
# 开发环境启动
npm start
# 生产环境构建
npm run build
⚙️ 系统配置与优化
配置文件详解
Spug的核心配置文件位于 spug_api/spug/settings.py,主要配置项包括:
- 数据库配置 - 连接字符串、用户名密码
- Redis配置 - 缓存和会话存储
- 邮件服务器 - 告警通知配置
- 监控设置 - 性能指标收集
服务启动脚本
项目提供了多个启动脚本,位于 spug_api/tools/ 目录:
start-api.sh- 启动API服务start-ws.sh- 启动WebSocket服务start-worker.sh- 启动任务队列start-scheduler.sh- 启动定时任务start-monitor.sh- 启动监控服务
🔍 首次访问与系统验证
登录系统
- 打开浏览器访问
http://localhost:3000 - 使用默认账号登录:
- 用户名:
admin - 密码:
spug.dev
- 用户名:
功能模块检查
登录后请验证以下核心功能是否正常:
- ✅ 主机管理 - 添加和管理服务器
- ✅ 应用部署 - 配置发布流程
- ✅ 任务调度 - 创建定时任务
- ✅ 监控告警 - 设置监控规则
🛠️ 常见问题排查
端口冲突解决
如果出现端口占用问题,可以修改服务端口:
# 修改后端端口
python manage.py runserver 0.0.0.0:8080
# 修改前端端口
PORT=3001 npm start
权限问题处理
确保运行Spug的用户具有足够的权限:
- 读取项目文件
- 执行系统命令
- 访问网络资源
📊 生产环境部署建议
使用进程管理工具
配置进程管理工具来管理Spug的各个服务进程,确保服务稳定运行。
Nginx反向代理配置
使用Nginx作为反向代理,提供更好的性能和安全性。
💡 进阶配置与扩展
集成外部系统
Spug支持与多种外部系统集成:
- LDAP/AD认证
- 邮件服务器
- 消息推送服务
通过以上步骤,您已经成功完成了Spug运维平台的部署。现在可以开始配置您的运维流程,享受自动化运维带来的便利!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考




