对于中小型企业而言,管理主机和应用往往是一项繁琐的任务。应用的部署通常需要直接连接服务器,然后进行手动的环境配置、代码拉取、应用构建和部署发布等工作,这样的流程容易出错,而且耗时费力。一个优秀的自动化运维平台可以极大地节省人力物力,并提高开发部署的效率。Spug正是一个面向中小型企业设计的轻量级自动化运维平台,为企业提供了简单易用的解决方案。
简介
Spug是一款开源的运维管理平台,其名称源自中文中“麻雀”的意思。正如麻雀虽小却五脏俱全一样,Spug虽然简洁,却提供了完整的功能。它为中小型企业提供了全面的自动化运维解决方案。通过Spug,用户可以轻松管理主机和应用,实现自动化部署、监控、日志管理等功能,从而极大地提高了运维效率。
目前在Github上拥有9.7K Star
并且该项目也相对成熟,拥有完善的技术文档和部署文档。
同时还配备了演示环境,演示地址
特征
- 批量执行: 主机命令在线批量执行
- 在线终端: 主机支持浏览器在线终端登录
- 文件管理: 主机文件在线上传下载
- 任务计划: 灵活的在线任务计划
- 发布部署: 支持自定义发布部署流程
- 配置中心: 支持KV、文本、json等格式的配置
- 监控中心: 支持站点、端口、进程、自定义等监控
- 报警中心: 支持短信、邮件、钉钉、微信等报警方式
- 优雅美观: 基于 Ant Design 的UI界面
- 开源免费: 前后端代码完全开源
部署安装
安装docker
yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install docker-ce docker-compose-plugin systemctl enable docker systemctl start docker
创建docker-comppose
version: "3.3" services: db: image: mariadb:10.8.2 container_name: spug-db restart: always command: --port 3306 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci volumes: - /data/spug/mysql:/var/lib/mysql environment: - MYSQL_DATABASE=spug - MYSQL_USER=spug - MYSQL_PASSWORD=spug.cc - MYSQL_ROOT_PASSWORD=spug.cc spug: image: openspug/spug-service container_name: spug privileged: true restart: always volumes: - /data/spug/service:/data/spug - /data/spug/repos:/data/repos ports: # 如果80端口被占用可替换为其他端口,例如: - "8000:80" - "80:80" environment: - MYSQL_DATABASE=spug - MYSQL_USER=spug - MYSQL_PASSWORD=spug.cc - MYSQL_HOST=db - MYSQL_PORT=3306 depends_on: - db
启动容器
docker compose up -d
初始化
以下操作会创建一个用户名为 admin 密码为 spug.cc 的管理员账户,可自行替换管理员账户/密码。
docker exec spug init_spug admin spug.cc
访问测试
在浏览器中输入 http://localhost:80 访问(默认账户密码在初始化时设置)。
功能预览
主机管理
主机在线终端
文件在线上传下载
主机批量执行
角色权限
如果你对项目的更详细特性和功能感兴趣,欢迎访问项目地址以进行深入探索。