一飞开源
阅读698

[开源]领先的开源自动化项目部署服务,代码发布通过Web一键完成

一、开源项目简介

Go Runner 是领先的开源自动化项目部署服务!支持各种web、php、java、python、go等代码的发布,所有操作可以通过web来一键完成。Go Runner 基于 go 构建安装简单,无需安装其他依赖环境,开箱即用。Go Runner 是一个可自由配置项目的开源上线部署系统。

二、开源协议

使用MIT开源协议

三、界面展示

预览

[开源]领先的开源自动化项目部署服务,代码发布通过Web一键完成

[开源]领先的开源自动化项目部署服务,代码发布通过Web一键完成

[开源]领先的开源自动化项目部署服务,代码发布通过Web一键完成

四、功能概述

特性

  • 支持 gitlab、github、gitee仓库;
  • 支持手动发布上线部署;
  • 支持Test、Dev等多种环境webhook自动化部署,减少团队协作及开发成本;
  • websocket 实时展示部署中的 shell console

五、技术选型

Go Runner 安装使用说明

#下载

访问一飞开源:https://code.exmay.com/

[开源]领先的开源自动化项目部署服务,代码发布通过Web一键完成

#配置

配置项目 etc/config.yaml

# 配置文件
Host: "127.0.0.1" # 运行addr
Port: "8080"      # 运行端口

# webhook 自动化部署回调域名,根域名,如www.gn.com/www.ol.com
Domain: "http://go.runner.io"

# mysql (此处配置暂时不用理会)
MysqlDNS: mysql://root:123456@tcp(127.0.0.1:3306)/pave?charset=utf8mb4&parseTime=True&loc=Local
TimeZone: Asia/Shanghai

# 本地redis连接配置
RedisDNS: 61c07e1ae08d08a2@127.0.0.1:6379
# 默认redis使用库
DefaultDb: 1
# redis队列使用库
QueueDb: 12
# 消费者work数量 
WorkNumber: 1

#Nginx 配置

upstream runner {
    server 0.0.0.0:8080 weight=1;
}

server {
    listen       80;
    server_name  go.runner.io; # 域名设置
    access_log   /usr/local/var/log/nginx/runner.log; # 日志目录
    error_log    /usr/local/var/log/nginx/runner.error.log; # 日志目录

    index index.html index.htm;

    add_header Access-Control-Allow-Origin *;
    add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS, PUT, DELETE, PATCH';
    add_header Access-Control-Allow-Headers 'DNT,Keep-Alive,User-Agent,Cache-Control,Content-Type,Authorization,Access-Token';
    # cors
    if ($request_method = 'OPTIONS') {
        return 204;
    }

    # api
    location / {
        client_max_body_size       50m;
        client_body_buffer_size    128k;
        proxy_connect_timeout      300;
        proxy_send_timeout         300;
        proxy_read_timeout         300;
        proxy_buffer_size          4k;
        proxy_buffers              4 32k;
        proxy_busy_buffers_size    64k;
        proxy_temp_file_write_size 64k;

        # 将客户端的 Host 和 IP 信息一并转发到对应节点
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header HTTP-VIA $http_via;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        # 转发Cookie,设置 SameSite
        # proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";
        proxy_cookie_path / "/; HttpOnly; SameSite=Lax";

        # 执行代理访问真实服务器
        proxy_pass http://runner;
    }
    
    # websocket
    location /ws {
        proxy_set_header Upgrade "websocket";
        proxy_set_header Connection "upgrade";
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;
        proxy_http_version 1.1;

        # 转发到多个 ws server
        proxy_pass http://runner;
    }
}

#运行项目

运行项目前请保证 data 目录和 runtime 目录的可写权限

windows 用户打开cmd 运行 .\awesome-runner.exe

mac、linux 运行 ./awesome-runner ,项目运行成功如下:

[开源]领先的开源自动化项目部署服务,代码发布通过Web一键完成

打开浏览器访问 web控制台

#项目部署脚本

需要明确部署脚本文件名为 .runner-ci.yml,它是存在于您的实际项目根目录下,随 仓库提交更新下载,用于约束和申明部署时执行的脚本的配置文件。配置文件格式说明如下:

# 工作目录
webpath: /Users/zrone/Developments/dtest/runnnn
# 部署分支,至少一个,可以配置多个,用于自动化部署触发部署
only:
  - master
  - dev
  - test
# 环境变量,用于脚本执行时申明环境变量,仅当前session有效,不会污染全局,可配置多个
environment:
  workdir: /home/wwwroot/deploy
  a: b
  c: d
# pull前运行脚本
prepare:
  - nginx -s stop
# pull 完成运行脚本
script:
  - cd ${webpath} && pwd
# 发布运行脚本
release:
  - nginx 
  - netstae -tunlp | grep 8080

六、源码地址

源码下载

深圳坪山网站建设公司北辰网站关键词优化哪家服务好海外网站seo优化网站上线之前优化工作总结兰州网站优化排名的几种松岗推广网站优化福建省网站优化模式海南网站seo优化当涂县网站seo优化排名青岛网站的优化关键合肥市seo网站优化门头沟网站优化企业网站优化为什么见效慢为你解惑许昌网站排名优化优化网站择火15星深圳外贸网站关键词优化多少钱网站链接优化的建议浦东新区网站优化驭明网站收入少怎么优化seo网站优化方法福田外贸网站优化荷丽提皮肤优化管理官方网站网站的优化就找z火21星赞东莞网站专题优化邯郸百度网站优化青岛网站seo优化价格怀化网站排名优化如何优化一个好网站新乐关键词网站优化盖州优化网站排名惠州行业网站优化公司香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

深圳坪山网站建设公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化

关注下面的标签,发现更多相似文章

一飞开源
发布了 篇专栏 · 获取点赞 · 获取阅读

评论

查看更多
相关推荐
关于作者
一飞开源
获得点赞 100
文章被阅读 1000
相关文章

    深圳坪山网站建设公司北辰网站关键词优化哪家服务好海外网站seo优化网站上线之前优化工作总结兰州网站优化排名的几种松岗推广网站优化福建省网站优化模式海南网站seo优化当涂县网站seo优化排名青岛网站的优化关键合肥市seo网站优化门头沟网站优化企业网站优化为什么见效慢为你解惑许昌网站排名优化优化网站择火15星深圳外贸网站关键词优化多少钱网站链接优化的建议浦东新区网站优化驭明网站收入少怎么优化seo网站优化方法福田外贸网站优化荷丽提皮肤优化管理官方网站网站的优化就找z火21星赞东莞网站专题优化邯郸百度网站优化青岛网站seo优化价格怀化网站排名优化如何优化一个好网站新乐关键词网站优化盖州优化网站排名惠州行业网站优化公司香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

    深圳坪山网站建设公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化