Integrate工具
持续集成、持续部署的工具很多,其中Jenkins是一个开源的持续集成平台。
Jenkins涉及到将编写完毕的代码发布到测试环境和生产环境的任务,并且还涉及到了构建项目等任务。
Jenkins需要大量的插件保证工作,安装成本较高,我们会基于Docker搭建Jenkins。
准备工作
服务器建议2核4G以上配置。
准备jdk和maven安装包。其中maven需要在setting.xml中配置镜像源和jdk1.8的插件,如下:
# 阿里云镜像地址
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
1. Jenkins介绍
百度百科:Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。
Jenkins应用广泛,大多数互联网公司都采用Jenkins配合GitLab、Docker、K8s作为实现DevOps的核心工具。
Jenkins最强大的就在于插件,Jenkins官方提供了大量的插件库,来自动化CI/CD过程中的各种琐碎功能。
Jenkins最主要的工作就是将GitLab上可以构建的工程代码拉取并且进行构建,再根据流程可以选择发布到测试环境或是生产环境。
一般是GitLab上的代码经过大量的测试后,确定发行版本,再发布到生产环境。
2. Jenkins安装
- 拉取Jenkins镜像
docker pull jenkins/jenkins
- 编写docker-compose.yml
version: "3.1"
services:
jenkins:
image: jenkins/jenkins
container_name: jenkins
ports:
- 8080:8080
- 50000:50000
volumes:
- ./data/:/var/jenkins_home/
注意镜像版本号要对应。注意挂载目录
data
,后期插件等的配置都要在这里修改。
- 启动镜像
docker-compose up -d
- 首次启动会因为数据卷data目录没有权限导致启动失败,设置data目录写权限
chmod -R a+w data/
- 由于Jenkins需要下载大量内容,但是由于默认下载地址下载速度较慢,需要重新设置下载地址为国内镜像站
# 修改数据卷中的hudson.model.UpdateCenter.xml文件
将https://updates.jenkins.io/update-center.json修改为下列
# 将下载地址替换为http://mirror.esuni.jp/jenkins/update
# 清华大学的插件源也可以https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
修改完重新启动即可
docker-compose restart
。
- 再次重启Jenkins容器,访问Jenkins(需要稍微等会)
页面显示正在初始化,稍等一回儿。
- 查看密码登录Jenkins,并登录下载插件
docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword
- 选择需要安装的插件
说明:插件下载失败正常,后期也可以下载,点击继续即可。官网也可以下载。
- 下载完毕设置信息进入首页
- 将这两个需要的插件首先下载下来
Git Parameter和Publish Over SSH
至此,安装就成功了!!!
点击下方微信公众号名片,获取更多内容。