Jenkins与Docker的自动化CI/CD

高效的CI/CD环境能获得什么呢?

  1. 及时发现问题:提早得到集成反馈和修复
  2. 大幅度减少故障率:业务流程化,减少人工出错风险
  3. 加快迭代速度:可以在几分钟内运行几十次、甚至上百次持续集成
  4. 减少时间成本:多项目管理及繁琐的部署工作没有了,不必再花费一定时间去准备
  5. 研发端到端流水线,一键部署,应用弹性伸缩,灰度发布

要想做到一个高效的CI/CD流程,需要有能力整合DevOps工具链及多环境适配,并且设计之初以自动化为原则,如一键部署、一键升级。


发布流程设计

在这里插入图片描述

在这里插入图片描述

1. 开发语言:Java
2. 项目代码版本管理:Git
3. 代码编译:Maven
4. 持续集成:Jenkins
5. 交付:以Docker镜像形式交付,提交至Harbor
6. 部署:Docker主机创建容器

环境规划如下:

角色 IP
Docker 192.168.30.128
Jenkins 192.168.30.129
Git 192.168.30.130

工作流程:

  1. 开发人员提交代码到Git版本仓库;
  2. Jenkins人工/定时触发项目构建;
  3. Jenkins拉取代码、代码编译、打包镜像、推送到镜像仓库;
  4. Jenkins在Docker主机创建容器并发布。

部署Git仓库

首先部署一个Git仓库,存储测试的代码,这里选择solo博客程序做测试:https://github.com/b3log/solo 。该步骤在 192.168.30.130 上执行。

  • 安装Git:
# yum install -y git
  • 创建Git用户并设置密码:
# useradd git

# passwd git
  • 创建仓库:
# su - git

# mkdir solo.git

# cd solo.git

# git init --bare           #创建裸仓库

# vim config                #添加用户,否则commit报错
[user]
        name = lzx
        email = lzx@lzx.com
  • 上传项目到仓库:

拉取代码

# git clone https://github.com/b3log/solo.git

添加私有仓库地址

# cd solo/

# git remote remove origin

# git remote add origin git@192.168.30.130:/home/git/solo.git

提交到私有仓库

# git add .

# git commit -m "all"

# git push origin master

部署Harbor镜像仓库

之前部署过,此处省略,参考这里:部署Harbor


安装Docker

需要安装Docker及配置Java环镜。 该步骤在 192.168.30.128 上执行。

  • 安装依赖包:
# yum install -y yum-utils device-mapper-persistent-data lvm2
  • 添加Docker软件包源:

                
  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值