V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
klakekent
V2EX  ›  git

GIT 如何通过 webhook 部署负载均衡后面的实例?

  •  
  •   klakekent · 2017-05-26 12:02:26 +08:00 · 2659 次点击
    这是一个创建于 2745 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在我有一组服务器放到 aws 上面,通过一台 LB 来分发请求到后面的 4 台服务器,我想请问下如果想通过 git 的 webhook 来部署代码,这样当 push 代码到 master 的时候,触发 webhook,webhook 只可能请求到其中的一台服务器吧?如何能让这 4 台都能更新代码呢?
    6 条回复    2017-05-26 14:05:38 +08:00
    shoaly
        1
    shoaly  
       2017-05-26 12:05:20 +08:00
    明显可以到 4 台的, 搜一下 hook 里面 post-receive, 里面是可以直接执行 shell 的
    klakekent
        2
    klakekent  
    OP
       2017-05-26 12:21:53 +08:00
    @shoaly 我是通过 webhook 啊 代码仓库在 github 上面
    tinyproxy
        3
    tinyproxy  
       2017-05-26 12:35:40 +08:00
    1. 你需要的是批量部署,写个简单的服务,收到 webhook 后自己跑个 ansible playbook 就搞定了,其他批量远程脚本也 OK。
    2. 看起来像像部署 PHP。。。要求不高&偷懒的话直接每个机器写个 crontab,5 分钟 sync 一次 master 分支,webhook 都省了。
    klakekent
        4
    klakekent  
    OP
       2017-05-26 12:56:53 +08:00
    @tinyproxy 恩 第一个方式是可以的 我本来是想看有啥最简单的方式 就 webhook 直接 trigger 最简单 但是又不太好能请求到四台机器
    wei745359223
        5
    wei745359223  
       2017-05-26 14:01:49 +08:00
    做个 NFS 其他三台挂载这一台就可以了
    incompatible
        6
    incompatible  
       2017-05-26 14:05:38 +08:00 via iPhone
    专门开一台带公网 ip 的服务器收 webhook 后部署 4 台应用服务器
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2576 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:17 · PVG 19:17 · LAX 03:17 · JFK 06:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.