V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lc1450
V2EX  ›  DevOps

关于 jenkins gitlab 自动化部署的疑问?

  •  
  •   lc1450 · 2018-07-20 16:28:39 +08:00 · 5224 次点击
    这是一个创建于 2100 天前的主题,其中的信息可能已经有所发展或是发生改变。

    组长让我用 jenkins gitlab 搭建自动部署平台,我也是第一次接触这些。在本地搭了环境,能勉强实现 git push 后触发 jenkins.

    我的想法是,要实现自动化的话,开发人员不用操作 jenkins,所以我得写一个录入任务的页面给开发,然后调用 jenkins 的 api 生成任务.这样的话,可以只用一个 jenkins 账户来管理任务, 但是这样好像有安全问题.

    网上找了很多教程,但都是演示(单用户),我想问下大家,像这种平台在线上是怎么运作的(用户权限管理 /任务管理),希望大家给一点建议,谢谢.

    14 条回复    2018-09-04 21:38:10 +08:00
    lhy360121
        1
    lhy360121  
       2018-07-20 17:00:34 +08:00
    jenkins 有用户系统的。 可以开放一些 job 给开发点点点。


    一些自动触发 job,用单独的用户。
    alvinbone88
        2
    alvinbone88  
       2018-07-20 17:20:28 +08:00
    wxsm
        3
    wxsm  
       2018-07-20 17:24:07 +08:00
    最近刚好做了类似的工作,不过使用 gitlab 内置的 CI,实话说比 jenkins 好用多了,该有的功能也都有,也省去了集成的麻烦。了解一下?
    jinhan13789991
        4
    jinhan13789991  
       2018-07-20 17:29:33 +08:00
    建议使用 docker 搭建实现 很简单的~
    beginor
        5
    beginor  
       2018-07-20 17:31:26 +08:00 via Android
    用 gitlab ci 才是正确的方式, 建议是一台计算机,docker 还是有一些坑要踩的
    wingyiu
        6
    wingyiu  
       2018-07-20 20:43:08 +08:00
    @beginor 然后真实的 ci 和 cd 流程比较复杂,自动和半自动,审核,更新配置和 db,全自动 ci 不靠谱
    queue
        7
    queue  
       2018-07-20 22:09:19 +08:00 via Android
    @wxsm 请问一下 gitlab 的 CI/CD 功能,如何在 gitlab 的页面一键回滚呢?前一阵子也在入 gitlab 的这个坑,然后发现页面上面无法回滚。望赐教。
    queue
        8
    queue  
       2018-07-20 22:10:46 +08:00 via Android
    jenkins 有插件可以实现针对不同角色进行权限控制,能达到多角色多用户权限控制的效果
    autotesting
        9
    autotesting  
       2018-07-20 23:43:48 +08:00
    jenkins 配置 gerrit trigger,这样 jenkins 就能监听提交,然后自动触发呀。
    beginor
        10
    beginor  
       2018-07-21 06:19:04 +08:00 via Android
    @wingyiu 对,我们也是半自动化流水线。 手动更新配置和数据库,自动化常规更新。
    zqcolor
        12
    zqcolor  
       2018-07-21 10:23:40 +08:00
    git + jenkins + jfrog

    大概流程如下:
    开发的 git push 后,git 有 post-receive hook 可以 curl jenkins 的 job,然后 jenkins 的 binary 送到 jfrog,然后是开发的在 jfrog 里面可以下载 binary

    jenkins 里面的 build account 需要有权限获取 git 代码和操作 build server,不用管理员权限。

    管理员生成任务 job, 或者建立一个专门的任务账号只生成任务 使用 rest api
    wbswjc
        13
    wbswjc  
       2018-09-04 20:52:00 +08:00
    @queue gitlab environment, 不过是和 gitlab CI 紧密结合的, gitlab CI 是成体系的一套东西, 如果用 jenkins, 只能自己实现了
    queue
        14
    queue  
       2018-09-04 21:38:10 +08:00
    @wbswjc gitlab environment 可以做到界面一键回滚吗?搜了一下看官方文档并没有找到对应的介绍,能否给下相关的参考链接呢?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1109 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 18:32 · PVG 02:32 · LAX 11:32 · JFK 14:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.