1.1 持续集成, 持续交付 介绍
参考博客: https://www.cnblogs.com/cay83/p/8856231.html
1, 传统交付
1. 传统软件的开发与交付的周期都很漫长, 从需求的分析, 系统的设计, 编写测试用例, 系统开发, 单元测试, 组装测试到交付调试.
2. 每一次交付, 升级, 都需要提供基础的硬件, 软件的环境, 软件的代码, 软件的文档与手册.
3. 工程师都按照之前预演过好多遍的流程, 对照着系统的部署手册, 一步一步的组装硬件, 安装软件, 稍有差池, 就要按照对应的应急预案进行回滚.
2, 技术工程师日常 与 痛点
1) 立项, 建代码库, 申请资源, 拉分支写代码, 联调测试, 发布到线上, 设置监控点, 质效分析和总结等等
2) 这些活动存在于不同的平台, 每天在不停的重复, 需要不停的和各个团队沟通, 不停的做研发平台和技术栈的切换
3) 所以我们又回到持续交付的一个原则, 如果有一件事让你感觉到痛苦, 那么就尽早实现自动化.
4) 梳理出规范化的玩法, 采用自动化的高效手段, 用技术去解决这些让我们感觉头疼的问题.
3,CI 持续集成 与 CD 持续交付
持续集成 (Continuous Integration,CI): 代码合并, 构建, 部署, 测试都在一起, 不断地执行这个过程, 并对结果反馈 (主要产出是一个镜像)
持续部署 (Continuous Deployment,CD): 加将产品部署到 测试环境, 预生产环境, 生产环境
持续交付 (Continuous Delivery,CD): 将最终产品发布到生产环境, 给用户使用
4, 产品线发布流程
5, 国内一些公司开发的轮子
阿里云效 / codepipeline: https://www.aliyun.com/product/codepipeline
百度效率云: https://xiaolvyun.baidu.com/
普元 devops 平台: http://www.primeton.com/products/devops/
6, 构建持续集成环境介绍
1.2 构建持续集成环境 (搭建 Harbor 私有镜像仓库: 192.168.56.14)
1, 安装 Docker(192.168.56.14)
- # 1) 安装依赖包
- yum install -y yum-utils device-mapper-persistent-data lvm2
- # 2) 添加 Docker 软件包源 (否则 doker 安装的不是新版本)
- yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- # 3) 安装 Docker CE
- yum install -y docker-ce
- # 4) 启动 Docker 服务并设置开机启动
- systemctl start docker
- systemctl enable docker
- # 5) 安装 docker compose
- curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
- chmod +x /usr/local/bin/docker-compose
- docker-compose --version # 测试 docker-compose 是否安装好
2, 安装 Harbor(192.168.56.14)
- '''安装 Harbor 镜像仓库'''
- # 1, 下载离线安装包
- https://github.com/goharbor/harbor/releases
- # 2, 解压并配置访问地址'''
- tar zxvf harbor-offline-installer-v1.8.1.tgz
- cd /aaa/harbor
- vi harbor.yml
- '''
- hostname = 192.168.56.14
- harbor_admin_password = 123456
'''
# 3, 准备配置
./prepare
# 4, 导入镜像并启动
./install.sh
# 5, 查看容器状态
docker-compose ps
安装完成后可以登录 Harbor:http://192.168.56.14
3,Git 代码版本仓库
'''在 192.168.56.14 安装 Git 仓库'''
# 1, 安装 Git
yum -y install git
# 2, 创建 Git 用户并设置密码
useradd git
passwd git
# 3, 创建仓库 (下面三步 git 仓库已经创建完成)
su - git # 切换到 git 用户
mkdir demo.git # 在 git 用户家目录创建镜像仓库文件夹 demo.git
cd demo.git
git --bare init # 初始化镜像仓库
'''在 192.168.56.13 中模拟拉取 Git 代码进行测试'''
- # 4, 模拟拉取并提交代码
- yum -y install Git
- Git clone [email protected]192.168.56.14:/home/Git/demo.Git
- touch test.py # 创建一个文件模拟代码提交
- Git add .
- Git commit -m 'test'
- Git push origin master
- # 5, 配置客户端与 Git 服务器 SSH 免交互认证
- SSH-keygen # 生成秘钥
- SSH-copy-id [email protected] # 将私钥拷贝到 Git 服务器
- SSH [email protected] # 在 192.168.56.13 测试免密登录 192.168.56.14
- 1111111111111111
来源: http://www.bubuko.com/infodetail-3160271.html