CICD概念及部署Jenkins

 CICD:

1、持续集成(Continuous Integration) 持续集成是指软件个人研发的部分向软件整体部分交付,频繁进行集成以便更快地发现其中的错误。“持续集成”源自于极限编程(XP),是 XP 最初的 12 种实践之一。

CI 需要具备这些:

全面的自动化测试。这是实践持续集成&持续部署的基础,同时,选择合适的 自动化测试工具也极 其重要;

灵活的基础设施。容器,虚拟机的存在让开发人员和 QA 人员不必再大费周折;

版本控制工具。如 Git,CVS,SVN 等;

自动化的构建和软件发布流程的工具,如 Jenkins,flow.ci;

反馈机制。如构建/测试的失败,可以快速地反馈到相关负责人,以尽快解决达到一个更稳定的版 本。

2、持续交付(Continuous Delivery)

持续交付在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「类生产环境」 (production-like environments)中。持续交付优先于整个产品生命周期的软件部署,建立在高水平自 动化持续集成之上。

灰度发布。 持续交付和持续集成的优点非常相似:

快速发布。能够应对业务需求,并更快地实现软件价值。

编码->测试->上线->交付的频繁迭代周期缩短,同时获得迅速反馈;

高质量的软件发布标准。整个交付过程标准化、可重复、可靠

整个交付过程进度可视化,方便团队人员了解项目成熟度;

更先进的团队协作方式。从需求分析、产品的用户体验到交互 设计、开发、测试、运维等角色密 切协作,相比于传统的瀑布式软件团队,更少浪费。

3、持续部署(Continuous Deployment) 持续部署是指当交付的代码通过评审之后,自动部署到生产环境中。持续部署是持续交付的最高阶段。

这意味着,所有通过了一系列的自动化测试的改动都将自动部署到生产环境。它也可以被称为“Continuous Release”。

持续部署主要好处是,可以相对独立地部署新的功能,并能快速地收集真实用户的反馈。 可以release的时候,提交代码, 剩下的全部一站式自动搞定

4、内循环与外循环

内循环(开发要做的事情):

a.编码、测试、运行、debug、提交

b.代码推送到代码仓库(svn,git)【代码回滚】

c.进行CI过程(持续集成),万物皆可容器化。打包成一个Docker镜像

d.镜像推送到镜像仓库

e.测试

f.持续部署流程(CD),拿到之前的镜像,进行CD。怎么放到各种环境。uat、test、prod

外循环(运维要做的事情)

a.运行时监控 生产环境的管理

b.监控

c.线上反馈到开发

d.来到内循环

新功能,bug修复。

创建分支来做这个事情(开发功能)

a.提交分支的代码改变

b.进入持续集成流程

c.当前分支代码功能性自动化构建和测试

d.自动工具推送这次提交

e.自动化集成测试

f.可以看到效果

g.人工确认此次功能是否发布到生产环境

代码合并。

进入持续部署

流程 构建、测试、发布......

Jenkins:

1、Jenkins安装 https://www.jenkins.io/zh/doc/book/installing/

docker run \

-u root \

-d \

-p 8080:8080 \

-p 50000:50000 \

-v jenkins-data:/var/jenkins_home \

-v /etc/localtime:/etc/localtime:ro \

-v /var/run/docker.sock:/var/run/docker.sock \

--restart=always \

jenkinsci/blueocean

带了的 #/var/run/docker.sock 表示Docker守护程序通过其监听的基于Unix的套接字。

该映射允许 jenkinsci/blueocean 容器与Docker守护进程通信, 如果 jenkinsci/blueocean 容器需要实例化其他Docker容器,则该守护进程是必需的。

如果运行声明式管道,其语法包含agent部分用 docker;

例 如, agent { docker { ... } } 此选项是必需的。

安装后 docker logs 容器,可以看到密码

#备份jenkins

tar -cvf jenkins_data.tar /var/lib/docker/volumes/jenkins-data/_data/

#恢复jenkins

tar -xvf jenkins_data.tar /var/lib/docker/volumes/jenkins-data/_data/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值