设为首页 收藏本站
查看: 1218|回复: 0

[经验分享] Git+Docker+Jenkins持续集成

[复制链接]

尚未签到

发表于 2018-9-4 08:44:31 | 显示全部楼层 |阅读模式
  组成:
  Git 作为版本控制库
  Docker 搭建测试环境
  Jenkins 作为持续集成服务
  Jenkins实现CI(Continuous Integration)到CD(Continuous Delivery)的转换工具。
  期望:
  1、解决从开发–测试–上线等一系列环境统一及依赖问题
  2、可实现不停服务发布上线和灰度(需要实现LB)
  3、可实现发布回滚
  4、方便devops及运维操作
  思路:

  •   客户或产品有新需求变更或者测试人员提出bug时,会提交事件到开发人员,开发人员得到通知,会对开发分支做修改,项目会有不同的分支。
  •   分支中会包含dev和master,开发人员拉取dev分支代码,开发完成后push到dev分支及合并,通知测试人员部署到测试环境测试(Jenkins从Git拉取代码实现打包构建,生成docker image所需要的文件,push到镜像仓库,然后部署到测试环境cc)
  •   cc环境测试无问题后,部署到tt和demo环境。
  •   测试环境无问题后通知开发,开发发布代码到master分支(打tag),通知运维上灰度(Jenkins打包tag版本的镜像然后push到镜像仓库),测试无问题后可上线。
  •   客户(线上)环境pull最新镜像,升级现有镜像。如下图
  • DSC0000.png

  流程图:(来源网络)
DSC0001.jpg

  具体:
  镜像仓库:会提供基础的base版本的镜像,此镜像用于开发人员的自测和jenkins代码镜像的合并,生成新的镜像,开发人员和jenkins会提供相同的生成镜像的dockerfile文件,保证程序环境的统一。
  镜像仓库将包含 dev:tag 测试镜像  master:tag 生产镜像
  Jenkins:会建立 build-dev、build-product、cc测试环境、tt测试环境、demo环境等项目,用户权限管理对应负责项目。
  build-dev:构建测试镜像,会从Git dev分支拉取代码打包,构建镜像dev:tag,成功后push到镜像仓库中。
  build-product:构建生产镜像,会从Git master分支下的某个tag拉取代码打包,构建镜像product:tag,成功后push到镜像仓库中。
  cc测试环境:获取到最新构建的dev镜像到cc机器,更新现有的镜像。
  tt测试环境和demo环境:同cc环境
  Git: 版本控制,分支dev 分支master及master 下各个版本的tag
  此方案是基础版(有部分细节并未考虑到),涉及到重复测试过多,后面可用Selenium前端测试,postman+jenkins API测试或其他工具实现自动化测试,暂时先实现有无问题,后续再优化改进。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-562240-1-1.html 上篇帖子: 安装配置maven、ant(Jenkins) 下篇帖子: Jenkins之学习路线
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表