持续交付36讲
王潇俊
携程系统研发部总监
立即订阅
7080 人已学习
课程目录
已完结 41 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 量身定制你的持续交付体系
免费
基本概念 (3讲)
01 | 持续交付到底有什么价值?
02 | 影响持续交付的因素有哪些?
03 | 持续交付和DevOps是一对好基友
配置管理 (4讲)
04 | 一切的源头,代码分支策略的选择
05 | 手把手教你依赖管理
06 | 代码回滚,你真的理解吗?
07 |  “两个披萨”团队的代码管理实际案例
环境管理 (6讲)
08 | 测试环境要多少?从现实需求说起
09 | 测试环境要多少?从成本与效率说起
10 | 让环境自己说话,论环境自描述的重要性
11 | “配置”是把双刃剑,带你了解各种配置方法
12 | 极限挑战,如何做到分钟级搭建环境?
13 | 容器技术真的是环境管理的救星吗?
构建集成 (5讲)
14 | 如何做到构建的提速,再提速!
15 | 构建检测,无规矩不成方圆
16 | 构建资源的弹性伸缩
17 | 容器镜像构建的那些事儿
18 | 如何做好容器镜像的个性化及合规检查?
发布及监控 (6讲)
19 | 发布是持续交付的最后一公里
20 | Immutable!任何变更都需要发布
21 | 发布系统一定要注意用户体验
22 | 发布系统的核心架构和功能设计
23 | 业务及系统架构对发布的影响
24 | 如何利用监控保障发布质量?
测试管理 (3讲)
25 | 代码静态检查实践
26 | 越来越重要的破坏性测试
27 | 利用Mock与回放技术助力自动化回归
持续交付平台化 (3讲)
28 | 持续交付为什么要平台化设计?
29 | 计算资源也是交付的内容
30 | 持续交付中有哪些宝贵数据?
持续交付移动App (3讲)
31 | 了解移动App的持续交付生命周期
32 | 细谈移动APP的交付流水线(pipeline)
33 | 进阶,如何进一步提升移动APP的交付效率?
实践案例 (4讲)
34 | 快速构建持续交付系统(一):需求分析
35 | 快速构建持续交付系统(二):GitLab 解决代码管理问题
36 | 快速构建持续交付系统(三):Jenkins 解决集成打包问题
37 | 快速构建持续交付系统(四):Ansible 解决自动部署问题
特别放送 (2讲)
持续交付专栏特别放送 | 答疑解惑
持续交付专栏特别放送 | 高效学习指南
结束语 (1讲)
结束语 | 越痛苦的事,越要经常做
持续交付36讲
登录|注册

35 | 快速构建持续交付系统(二):GitLab 解决代码管理问题

王潇俊 2018-09-22
在上一篇文章中,我和你一起理清了我们即将构建的持续交付系统的需求,以及要具备的具体功能。那么,从这一篇文章开始,我们就要正式进入实战阶段了。我会和你详细介绍基于开源工具,从 0 开始搭建一套持续交付平台的详细过程,以及整合各个持续交付工具的一些技术细节。
按照我在前面分享的内容,搭建一套持续交付系统的第一步,就是搭建一套代码管理平台。这里我选择的开源工具是 GitLab,它是一套高仿 GitHub 的开源代码共享管理平台,也是目前最好的开源解决方案之一。
接下来,我们就从使用 GitLab 搭建代码管理平台开始吧,一起看看搭建 GitLab 平台的过程中可能遇到的问题,以及如何解决这些问题。

利用 GitLab 搭建代码管理平台

GitLab 早期的设计目标是,做一个私有化的类似 GitHub 的 Git 代码托管平台。
我第一次接触 GitLab 是 2013 年, 当时它的架构很简单,SSH 权限控制还是通过和 Gitolite 交互实现的,而且也只有源码安装(标准 Ruby on Rails 的安装方式)的方式。
这时,GitLab 给我最深的印象是迭代速度快,每个月至少会有 1 个独立的 release 版本,这个传统也一直被保留至今。但是,随着 GitLab 的功能越来越丰富,架构和模块越来越多,也越来越复杂。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《持续交付36讲》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(4)

  • 非常赞的分享
    2018-09-28
    2
  • 桃子-夏勇杰
    没太看明白,为什么要对gitlab做二次开发。jar的发布与gitlab有什么关系?gitlab不就是一个代码版本库工具么?

    作者回复: gitlab算是一个代码管理平台,可以利用它实现很多功能,比如pipeline等等,但也不是必须要依靠它来完成

    2019-11-05
    1
  • 铭熙
    GitLab的高可用,能否详细说下携程的实现?

    作者回复: 携程的方案就是做sharding+互备,利用ssh2作为代理达到对ssh请求的分流,这样每台服务器上只服务特定仓库,再配置仓库互备,在部分服务器出现问题时修改sharding策略引流到备机就可以了

    2018-09-24
    1
  • 江湖小虾
    谢谢,老师的分享
    2018-09-22
收起评论
4
返回
顶部