一、Integrate 工具
二、Jenkins 介绍
1. Jenkins 最主要的工作
2. CI / CD 可以理解为:
2.1 CI 过程
2.2 CD 过程
三、Jenkins 安装
1. 安装准备工作
2. 安装 Jenkins
Stage 1:拉取 jenkins 镜像
Stage 2:编写docker-compose.yml
Stage 3:设置data目录写权限(不设置会报错)
Stage 4:安装 jenkins
Stage 5:重启当前容器(jenkins)
Stage 6:查看日志获取初始密码
Stage 7:查看首页:
Stage 8:设置国内镜像
Stage 9:等待如下页面后:输入初始密码
Stage 10:下载插件(默认即可)
Stage 11:等待插件下载
Stage 12:创建:第一个管理员
Stage 13:设置jenkins路径(默认即可)
Stage 14:开始 jenkins
安装失败的插件
Stage 15:安装 Git Parameter 和 Publish Over SSH
Stage 16:如果安装失败:查询启动容器
一、Integrate 工具
- 持续集成、持续部署 的工具很多,其中Jenkins是一个开源的持续集成平台
- Jenkins 将编写完毕的代码发布到测试环境和生产环境的任务,并且构建项目等
- Jenkins 需要大量的插件保证工作,安装成本较高,下面会基于Docker搭建Jenkins
二、Jenkins 介绍
- 开源软件项目
- 基于Java开发 的一种 持续集成工具
- DevOps 方案之一:Jenkins 配合 GitLab、Docker、K8s 作为实现[DevOps]的核心工具。
- Jenkins最强大的就在于插件,Jenkins官方提供了大量的插件库,来自动化CI/CD过程中的各种琐碎功能。
1. Jenkins 最主要的工作
将GitLab上可以构建的工程代码拉取并构建,再根据流程选择发布到测试环境或是生产环境。
一般是GitLab上的代码经过大量的测试后,确定发行版本,再发布到生产环境。
2. CI / CD 可以理解为:
过程 | Jenkins 工作 | 协同 |
CI | 将代码拉取、构建、制作镜像 | 测试人员测试 |
CD | 将打好标签的发行版本代码 拉取、构建、制作镜像 | 运维人员部署 |
2.1 CI 过程
通过 Jenkins 将代码拉取、构建、制作镜像 交给 测试人员测试
- 持续集成(Continuous Integration):让软件代码可以持续的集成到主干上,并自动构建和测试。
2.2 CD 过程
通过Jenkins 将打好标签的发行版本代码 拉取、构建、制作镜像交给 运维人员部署
- 持续交付(Continuous Delivery):让经过持续集成的代码可以进行手动部署。
- 持续部署(Continuous Deployment):让可以持续交付的代码随时随地的自动化部署。
三、Jenkins 安装
1. 安装准备工作
- 官网 Jenkins
- 支持的插件 Jenkins Plugins
- 安装jenkins Jenkins download and deployment
2. 安装 Jenkins
Stage 1:拉取 jenkins 镜像
docker pull jenkins/jenkins
Stage 2:编写docker-compose.yml
version: "3.1"
services:jenkins:image: jenkins/jenkinscontainer_name: jenkinsports:- 8080:8080- 50000:50000volumes:- ./data/:/var/jenkins_home/ # 插件的安装目录
- 其中目录结构
Stage 3:设置data目录写权限(不设置会报错)
chmod -R a+w data
Stage 4:安装 jenkins
#进入jenkins安装目录
cd /mnt/bigdata/devops/jenkins
docker-compose up -d
Stage 5:重启当前容器(jenkins)
-
如果已经设置 Stage 3,就不会报错,这一步重启可以省略
docker-compose restart
Stage 6:查看日志获取初始密码
docker logs -f jenkins
Stage 7:查看首页:
- ip:8080 ( 准备中...如果时间过长:设置国内镜像 )
Stage 8:设置国内镜像
# 修改数据卷中的hudson.model.UpdateCenter.xml文件
<?xml version='1.1' encoding='UTF-8'?>
<sites><site><id>default</id><url>https://updates.jenkins.io/update-center.json</url></site>
</sites>
# 将下载地址替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
<?xml version='1.1' encoding='UTF-8'?>
<sites><site><id>default</id><url>http://mirror.esuni.jp/jenkins/updates/update-center.json</url></site>
</sites>
# 清华大学的插件源也可以https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
- 数据卷文件列表
- 目录:cd /mnt/bigdata/devops/jenkins/data
Stage 9:等待如下页面后:输入初始密码
Stage 10:下载插件(默认即可)
Stage 11:等待插件下载
- 失败也不要紧,后面继续安装
Stage 12:创建:第一个管理员
Stage 13:设置jenkins路径(默认即可)
Stage 14:开始 jenkins
安装失败的插件
- Updates : 需要更新的
- Available:可用的
- Installed:已安装的
- Advanced
Stage 15:安装 Git Parameter 和 Publish Over SSH
- 跳转下载页面
Stage 16:如果安装失败:查询启动容器
docker-compose restart