1 缘起

我一个开发为什么要学Jenkins?
Jenkins是啥?会给开发人员带来什么收益?
我个人而言,学习Jenkins只是单纯拓展下自己的应用技能,
帮助自己顺利地做实验。
我目前不可能因为自己要进行自动化部署而专门找一个专业人员,
一是没有这部分预算;
二是自己需要锻炼,动手实践。
话说回来,作为技术员,动手实践,填充实战经验,为后续构建完善的系统做准备。

2 Jenkins

Jenkins是独立的开源自动化服务器,可用于自动化构建、测试、交付或部署各种软件任务。
可以通过本地系统包、Docker安装,或者独立运行在安装JRE的机器中。
本文通过Docker部署Jenkins。

2.1 下载

https://www.jenkins.io/download/ 选择Docker镜像。

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_jenkins


选择Docker部署类型后,进入如下图的界面,

为了配合JDK版本:8,

我选择符合JDK的Jenkins,通过Tags查看历史Jenkins列表,

因为最新的Jenkins版本已经使用JDK11了,所以需要选择其他版本的Jenkins。

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_jenkins_02


选择JDK8版本的Jenkins,TAG为lts-jdk8,

拉取命令:

docker pull jenkins/jenkins:lts-jdk8

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_Docker_03


在Ubuntu20中使用sudo拉取:

sudo docker pull jenkins/jenkins:lts-jdk8

拉取过程如下图所示。

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_jenkins_04

2.2 下载镜像:dind

为在Jekins节点内执行Docker命令。
这个镜像按需安装。

sudo docker image pull docker:dind

2.3 新建挂载的文件夹

新建文件夹,用于挂载Jenkins镜像内部的文件,
保证:Jenkins宕机后,文件不丢失,可直接重启,无需再配置。

mkdir -p /home/xindaqi/software/install/jekins/data

修改文件管理员:

sudo chown -R 1000:1000 data

2.4 启动Jekins

使用Docker部署服务,一般有两种启动方式:
(1)前台启动:直接运行,控制台查看日志;
(2)后台启动:守护进行运行,日志文件查看日志;

2.4.1 前台启动

这里将Jenkins对外暴露的端口为:40000
映射Jenkins内部的8080端口。
前台启动,可在控制台直接查看日志,如下图:

sudo docker run --name jenkins-docker --rm  \
  --volume /home/xindaqi/software/install/jekins/data:/var/jenkins_home \
  --publish 40000:8080 \
jenkins/jenkins:lts-jdk8

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_jenkins_05

2.4.2 后台启动

后台启动:守护进程,使用参数:detach,
需要在日志文件中查看日志。

sudo docker run --name jenkins-docker --rm --detach  \
  --volume /home/xindaqi/software/install/jekins/data:/var/jenkins_home \
  --publish 40000:8080 \
jenkins/jenkins:lts-jdk8

2.5 查看容器

Jenkins启动后,查看运行的容器,
获取Jenkins容器ID,如下图:

docker ps

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_jenkins_06

2.6 进入容器

进入容器,是为了获取Jenkins初始密码,
毕竟第一次运行,需要查看密码。

sudo docker exec -it fe682ca1d6aa /bin/sh

获取初始密码

cat /var/jenkins_home/secrets/initialAdminPassword

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_jenkins_07


初始密码:

0cb8b5be1b3d4a408043682379845ba4

这里,完成Jenkins准备工作,下面正式配置Jenkins。

3 配置Jekins

3.1 引导页

通过访问如下地址,进入Jenkins引导页,如下图所示,由图可知,需要填入初始密码,即上面的初始密码。

http://192.168.211.129:40000

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_jenkins_08

3.2 安装插件

密码校验通过后,进入安装插件步骤,如下图所示,

这里选择:安装推荐的插件。

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_Docker_09

安装过程如下图所示。

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_Docker_10

3.3 创建用户

安装推荐插件后,进入创建用户,如下图,创建第一个管理员用户。

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_Docker_11


管理员用户信息如下:

序号

属性

描述

1

用户名

admin

2

密码

admin

实例:

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_docker_12

开始使用如下图:

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_Docker_13

3.4 首页

完成如上配置后,即可进入Jenkins首页,如下图,开始愉快地玩耍吧!

docker搭建Jenkins并配置实现自动化构建部署测试监控项目 docker jenkins自动部署原理_运维_14

4 小结

无小结。