gopub 企业级运维发布系统开源项目

我要开发同款
匿名用户2018年04月08日
45阅读
开发技术GO语言
所属分类Google Go、DevOps/运维工具、管理和监控
授权协议Apache

作品详情

gopub(基于vue.jselement框架+golangbeego框架开发)是一个基于运维场景设计的企业级运维发布系统。配置简单、功能完善、界面流畅、开箱即用!支持git、jenkins版本管理,支持各种web代码发布,一键完成Golang,nodejs,PHP,Python,JAVA等代码的发布、回滚操作。

我们运维团队前期使用walle(https://www.walle-web.io)web部署系统进行发布操作,在此也感谢walle团队贡献的优秀开源项目.walle的web体验比较好,本次开源的gopub前台完全模仿walle前台,使用vue.jselement框架重写.

gopub已在我们预发布和生产环境完成37000+次稳定部署,支持单项目100+台服务器部署110秒左右,支持2G+CDN静态资源发布传输30秒完成. 

使用框架

Element

Beego

httprouter

Taipei-Torrent

功能特性

部署简便:go二进制部署,无需安装运行环境,下个版本将支持Docker部署

gitlab发布支持:配置每个项目git地址,自动获取分支,commit选择并自动拉取代码

jenkins发布支持:支持jenkins编译包一键发布

ssh执行命令/传输文件:使用golang内置ssh库高效执行命令/传输文件

BT支持:大文件和大批量机器文件传输使用BT协议支持

多项目部署:支持多项目多任务并行,内置grpool协程池支持并发操作命令和传输文件

全web化操作:web配置项目,一键发布,一键快速回滚

API支持:提供所有配置和发布操作API,便于对接其他系统 API使用example

部署钩子:支持部署前准备任务,代码检出后处理任务,同步后更新软链前置任务,发布完毕后收尾任务4种钩子函数脚本执行

Docker快速启动#使用dockerhub镜像启动,连接外部数据库sudo docker run --name gopub -e MYSQL_HOST=127.0.0.1 -e MYSQL_PORT=3306 -e MYSQL_USER=root -e MYSQL_PASS=123456 -e MYSQL_DB=walle -p 8192:8192 --restart always -d lc13579443/gopub:latestDocker镜像制作#使用multi-stage(多阶段构建)需要docker 17.05+版本支持sudo docker build -t gopub .sudo docker run --name gopub -e MYSQL_HOST=127.0.0.1 -e MYSQL_PORT=3306 -e MYSQL_USER=root -e MYSQL_PASS=123456 -e MYSQL_DB=walle -p 8192:8192 --restart always -d gopub:latestKubernetes快速部署#apiVersion: apps/v1 需要kubernetes 1.9.0+版本支持kubectl apply -f gopub-kubernetes.yml
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论