本项目使用gin、gorm和ssh开发。提供完善的批量执行、作业管理、基础设施管理等功能,帮助基础运维同学快速、低成本、可视化、自动化的运维平台项目
🐉 特别感谢xirang开源项目
- [(xirang)](https://github.com/eryajf/xirang.git)
- 便捷导航
- 分类和导航的增删改查
- 导航页的实现
- 基础设施管理
- 主机组的增删改
- 主机的增删改查
- 支持主机和主机组多对多
- 作业管理
- 批量执行:多主机或主机组的批量执行命令
- 脚本执行:多主机或主机组的批量执行脚本
- 文件分发:支持服务器文件和本地上传文件分发到多主机
- 定时任务:可支持单次执行、间隔执行、cron表达式执行
- 作业编排:工作流的批量执行
- 权限控制
- 用户权限
后期更新计划:
1、新增个便捷导航,可以把运维资源(跳板机、监控、jenkins、harbor等资源,添加到导航里。)(已实现)
2、k8s管理,实现多集群的切换
go-devops-mimi/server
├── config----------------配置文件读取
├── controller------------控制层
├── logic-----------------逻辑层
├── middleware------------中间件
├── model-----------------对象定义
├── public----------------一些公共组件与工具
├── routers---------------路由
├── service---------------服务层
├── test------------------一些测试
├── config.yml------------配置文件
└── main.go---------------程序入口
go-devops-mimi 项目的基础依赖项只有 MySQL,本地准备好这个服务之后,就可以启动项目,进行调试。
# 服务器初始化环境
#安装docker和docker-compose,如已安装则忽略。
$ yum install -y yum-utils device-mapper-persistent-data lvm2
$ yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
$ sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
$ sudo service docker start
#安装golang,如已安装请忽略
$ wget https://mirrors.aliyun.com/golang/go1.21.7.linux-amd64.tar.gz
$ tar -xf go1.21.7.linux-amd64.tar.gz
$ mv go /usr/local/
$ echo 'export PATH=$PATH:/usr/local/go/bin' >> /etc/profile
$ go version
# 拉取代码
$ git clone https://github.com/qishu321/go-devops-mimi.git
# 修改后端配置
$ cd go-devops-mimi/server
# 文件路径 config.yml, 根据自己本地的情况,调整数据库等配置信息。
$ vim config/config.yml
# 配置好后端内容后,生成后端二进制文件
$ go env -w GOPROXY=https://goproxy.cn,direct && go mod tidy && CGO_ENABLED=0 go build -o mimi-server
#修改前端配置
$ co go-devops-mimi/mimi-ui
#修改.env.production内的配置信息
$ vim .env.production
# 启动服务
$ cd go-devops-mimi/deploy
$ bash deploy.sh
#访问服务
$ http://ip:80,用户名/密码:admin/123456