Jenkins使用
# 简介
Jenkins这东西的一个好处就是能够帮我们一键部署, 增加团队效率。
优点:
- Jenkins是一个可以拓展的持续集成引擎,持续集成这个词很重要,简单的一个词就是自动化。
- Jenkins的安装部署非常简单,因为它是依赖于Java的,他直接打成了一个war包,只要我们把这个war包放在servlet里面打开就可以开始进行安装,并且不需要数据库的支持(所有的文件都放在home文件夹里面)
- 所有的配置都可以在网页端进行配置,不需要单独的文件维护,因为之前在216上面写了两个安装部署打包的脚本,这些脚本都是放在服务器上的(因为开发规范,不允许将脚本放在代码库里面),每次要修改配置,都要登上216的服务器去修改配置。
- 支持web端,可以让整个团队的人都能够很方便的进行构建操作
- 并且支持丰富的插件(多阶段构建流水线以及多数据源,或者ssh支持等各种各样的插件)
# 安装与配置
Jenkins支持各种各样的操作系统,可以在各种各样的操作系统上运行
这里曾经遇到一个问题,就是在Linux上面安装的,没有办法帮我完成一个操作:在Linux上面
make build
windows的可执行文件,因为这个make build
的它涉及到一些CGO的东西,而c语言库在Linux和在windows下所导出的依赖库是不一样的,所以最后还是在windows上面又重新装了一个jenkins,当然这不是这里的重点
- 注意安装的时候要严格按照官网的步骤来进行安装,不要自己去瞎搞,因为这个东西是依赖于Java的,所以我们需要先安装Java,然后再安装Jenkins(版本要对齐)
- 下载地址:https://jenkins.io/download/
# windows
下载最新的版本(一个 WAR 文件)。Jenkins官方网址:
java -jar jenkins.war
# Linux
这里使用Docker来完成安装
docker pull jenkins/jenkins:2.426.2-lts-jdk17
docker run \
--name jenkins \
--restart=always \
-v jenkins_home:/var/jenkins_home \
-p 3011:8080 \
-p 3012:50000 \
-d jenkins/jenkins:2.426.2-lts-jdk17
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
- 8080端口是jenkins的web端口,可以通过这个端口来访问jenkins
- 50000端口是jenkins的slave端口(Jenkins Remoting服务),可以通过这个端口来访问jenkins的slave节点,建立分布式构建环境。
# 安装插件
# 推荐插件
- Git Parameter Plug-In
- GitLab Plugin
- GitLab Hook Plugin
# 简单配置
# 配置环境(windows)
# System配置
- 配置shell环境
- 安装git,配置git里面的那个bash.exe
- 配置git环境
执行器数量:与CPU核数一致,设置为10
# 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
Shell executable
通常你不需要填写此项,Jenkins会帮你找到正确的shell执行文件. 如果你的sh (Windows) 或者 /bin/sh不在系统PATH里, 那么就指定一个shell执行文件的绝对路径.
D:\software\Git\bin\bash.exe
SSH
- 连接Linux时,配置Remote Directory记得给
/
符号,可以避免找不到绝对路径的问题 - 连接Windows时,配置Remote Directory记得给
C:\
符号,可以避免找不到绝对路径的问题。否则默认就是配置文件里面的路径
# Tools
主要是配置一些工具,比如git,maven,jdk,Node的路径等等,单列一个是因为这些工具很重要!
Windows 环境最好是用绝对路径