Python开发开源运维平台Spug,适合中小型企业的自动化运维平台
off999 2024-11-25 15:55 37 浏览 0 评论
Spug介绍
Spug 面向中小型企业设计的轻量级无Agent的自动化运维平台,整合了主机管理、主机批量执行、主机在线终端、文件在线上传下载、应用发布部署、在线任务计划、配置中心、监控、报警等一系列功能。界面UI基于阿里开源的知名前端UI框架Ant Design。
仓库和文档地址
https://gitee.com/openspug/spug
https://github.com/openspug/spug
环境
功能特性
- 批量执行: 主机命令在线批量执行
- 在线终端: 主机支持浏览器在线终端登录
- 文件管理: 主机文件在线上传下载
- 任务计划: 灵活的在线任务计划
- 发布部署: 支持自定义发布部署流程
- 配置中心: 支持KV、文本、json等格式的配置
- 监控中心: 支持站点、端口、进程、自定义等监控
- 报警中心: 支持短信、邮件、钉钉、微信等报警方式
- 优雅美观: 基于 Ant Design 的UI界面
- 开源免费: 前后端代码完全开源
Docker安装
依赖环境
- Docker
- 现代浏览器
安装步骤
以下安装步骤使用 Centos7.x 操作系统。
1. 安装docker
$ yum install docker
$ systemctl start docker
2. 拉取镜像
阿里云的镜像与 Docker hub 同步更新,国内用户建议使用阿里云的镜像。
$ docker pull registry.aliyuncs.com/openspug/spug
3. 启动容器
Docker镜像内部使用的 Mysql 数据库。
如果需要持久化存储代码和数据,可以添加:-v 映射容器内/data路径
$ docker run -d -p 80:80 registry.aliyuncs.com/openspug/spug
# 持久化存储启动命令:
# mydata是本地磁盘路径,/data是容器内代码和数据初始化存储的路径
$ docker run -d -p 80:80 -v /mydata/:/data registry.aliyuncs.com/openspug/spug
4. 初始化
以下操作会创建一个用户名为 admin 密码为 spug.dev 的管理员账户,可自行替换管理员账户。
$ docker exec $CONTAINER_ID init_spug admin spug.dev
# 执行完毕后需要重启容器
$ docker restart $CONTAINER_ID
4. 访问测试
在浏览器中输入 http://localhost:80 访问。
用户名: admin
密码: spug.dev标准安装(详细看文档)
此安装文档适合具有一定编程能力基础的人员进行二次开发时的环境搭建,如果你是在生产环境部署,请参考 生产环境部署 文档。
依赖环境
- Python 3.6及以上
- Nodejs 12.14 TLS
- Redis 3.x及以上
- 现代浏览器
安装步骤
以下安装步骤假设项目安装在一台 macOS 系统的 /data/spug 目录下。
1. Clone项目代码
$ git clone https://***2. 创建运行环境
$ cd /data/spug/spug_api
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txt -i https://***
3. 初始化数据库
默认使用的 Sqlite 数据库。
$ python manage.py initdb
4. 创建默认管理员账户
$ python manage.py useradd -u admin -p spug.dev -s -n 管理员
# -u 用户名
# -p 密码
# -s 超级管理员
# -n 用户昵称5. 启动 api 开发环境服务
$ python manage.py runserver6. 安装前端依赖
可以把 npm 用 yarn 或 cnpm 代替。
$ cd /data/spug/spug_web
$ npm install7. 启动前端
$ npm start8. 访问测试
正常情况下 npm start 会自动在浏览器中打开项目,如果未打开可以在浏览器中输入 http://localhost:3000 访问。如果你按照上边的文档执行的话,在第 4 步创建了默认的管理员账户:
用户名:admin
密码:spug.dev9. 其他可选服务
通过以上步骤已经可以正常访问 Spug 了,但一些功能依赖额外的服务,请参考以下文档(参考官方文档,此处不再叙述)
批量执行的任务卡住无法看到执行输出
任务计划模块添加的任务不会执行
监控中心模块添加的监控任务不会执行
总结
Spug:麻雀,麻雀虽小,五脏俱全。
PS:优秀的开源项目有很多,也欢迎小伙伴们分享推荐!
相关推荐
- 16949认证费用是多少(16949审核员太难考了)
-
需要参加培训和考试,培训和考试是需要收费的,一般在300到500左右。内审员证书一般3年有效(因为标准是会更改的,更改标准则需要从新培训)大多数由企业组织人员参加培训。费用由企业承担,个人学这个的还是...
-
- mba是什么意思(长江商学院emba是什么意思)
-
工商管理硕士(MBA)是工商管理类硕士研究生学位,MBA是培养能够胜任工商企业和经济管理部门高层管理工作需要的务实型、复合型和应用型高层次管理人才,兼具理论与实践相结合,而其他硕士研究生只是培养科研型和教学型人才,偏向理论,不参与实践。MB...
-
2026-01-14 07:51 off999
- mdf文件游戏怎么安装(win10mdf文件游戏怎么安装)
-
朋友,应该还有一个只有几K的KuaiZipMount.mds文件吧?请确保这两个文件在同一个目录中然后用Daemontools等虚拟光驱软件,载入其中的mds文件之后进入虚拟光驱所在盘符执行...
- c盘莫名其妙的满了怎么办(c盘莫名其妙的满了怎么办windows)
-
当C盘突然满了,首先需要找到原因。可能是因为系统更新或安装了大量软件,也可能是因为存在大量垃圾文件或临时文件。可以通过清理垃圾文件、卸载无用软件、更改默认下载路径等方式来释放C盘空间。另外,可以考虑将...
- 电脑如何修改默认浏览器(电脑上怎样修改默认浏览器)
-
1、按下“windows+i”快捷键打开Windows设置,在设置界面选择系统。2、在系统里左边点击默认程序一项,右边会出现新的选项来。3、右边滚动鼠标滑轮下拉,点击web默认程序,点击选择想要默认打...
- 如何下载youtube视频(如何下载youtube视频2160p)
-
这个可以在应用宝中下载,就是在手机上下载一个应用宝,然后在搜索栏里输入软件名字,点击搜索,根据提示下载就可以了。将视频下载到电脑上有几种途径,如果是网络上的,可以下载的视频会设置有下载标记或按钮,点...
- 深度国际2025最新一期视频(今日关注最新一期的)
-
1、就算不快乐也不要皱眉,因为你永远不知道谁会爱上你的笑容。2、踏入社会的时候,不要什么话都跟别人讲,你说的是心里话,别人听的是笑话。3、该扔的就扔,该放弃就放弃,从今天起,余生做个俗人,以自己最好的...
- 华为最新系统版本(华为最新系统版本微信)
-
鸿蒙3.0。鸿蒙最新版本是3.0系统,相比2.0有着全面提升。尤其是在交互设计,多设备互联互通,流畅度性能,安全属性,用户关怀等方面升级幅度最大,而且升级并非是简单的更新换代,修复了不少鸿蒙2.0版本...
- 不知道原机主id密码如何激活
-
答案:如果忘记ID账号和密码,可以尝试以下方法激活手机:1.使用备用邮箱或手机号码:如果您已将备用邮箱或手机号码与您的ID账号绑定,可以使用备用邮箱或手机号码进行身份验证以激活手机。2.联系客服:...
- win10安装需要输入产品密钥(win10安装程序要输入产品密匙)
-
可按照如下方式解决:1.右击桌面左下角的“Windows”按钮,然后点击“命令提示符”项。2.接下来再输入以下命令:slmgr/ipkW269N-WFGWX-YVC9B-4J6C9-T83GX按回...
- 手机秒变电脑摄像头(手机秒变电脑摄像头怎么设置)
-
可以的我用过,但是要你手机支持啊国产的山寨机很多都支持这个功能:支持这个功能的手机摄像头有两种工作状态:手机摄像状态和USB连接状态,在手机设置里把手机的摄像头改为USB连接状态,直接插到电脑上就可以...
- bios没有advanced选项(bios没有advanced选项卡)
-
华硕主板可开机后点击ESC键或F12键选择AdvancedBIOSFeatures项:你说的只很少几项可以修改,可能是分别设置了CMOS密码和开机密码。而你进入COMS时输的的开机密码!要输入C...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
