安装配置Jenkins
Jenkins依赖于Java环境,在进行安装前在服务器安装好Java环境
0.安装Java环境
yum install -y java
1. 获取Jenkins
官方源下载过慢,使用清华源下载
mkdir /opt/jenkins
cd /opt/jenkins
wget -O jenkins-latest.rpm https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.190.3-1.1.noarch.rpm
rpm -ivh jenkins-latest.rpm
2. 启动配置
0.Jenkins配置文件
#jenkins主配置文件
cat /etc/sysconfig/jenkins
JENKINS_HOME="/var/lib/jenkins"
JENKINS_JAVA_CMD=""
JENKINS_USER="jenkins"
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true"
JENKINS_PORT="8080"
JENKINS_LISTEN_ADDRESS=""
JENKINS_HTTPS_PORT=""
JENKINS_HTTPS_KEYSTORE=""
JENKINS_HTTPS_KEYSTORE_PASSWORD=""
JENKINS_HTTPS_LISTEN_ADDRESS=""
JENKINS_HTTP2_PORT=""
JENKINS_HTTP2_LISTEN_ADDRESS=""
JENKINS_DEBUG_LEVEL="5"
JENKINS_ENABLE_ACCESS_LOG="no"
JENKINS_HANDLER_MAX="100"
JENKINS_HANDLER_IDLE="20"
JENKINS_EXTRA_LIB_FOLDER=""
JENKINS_ARGS=""
1. 设置防火墙
Jenkins默认监听地址是8080,如果开启了防火墙,需要去将8080端口加入访问许可
# 添加防火墙8080端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
# 重载生效
firewall-cmd --reload
2. 启动
systemctl start jenkins
# 加入开机自启
systemctl enable jenkins
3. 访问
从{ IP:8080 }访问Jenkins网络页面
首次进入会要求输入密码,密码已经存在本地
# 获取密码
cat /var/lib/jenkins/secrets/initialAdminPassword
将密码粘贴过来输入即可进入配置
会进行一段时间的初始化,如果时间过长,检查机器内存空余是否充足
4. 安装插件
由于国内的网络环境,不推荐在此安装插件,后续插件的安装可以进入后再自行按需安装
5. 创建管理员
安装完插件后会提示创建第一个管理员用户,如果不想创建,右下角可以点击“使用admin账户继续”
账户的登录名是:admin ,密码是/var/lib/jenkins/secrets/initialAdminPassword中存储的值,进入后可以修改
6. 配置实例地址
默认本地IP:8080端口访问,如果需要配置域名服务,可以自行配置,然后点击保存
7. 开始使用
此时点击开始使用可能会遇到白屏的情况,进入服务器重启服务即可解决
8.安装插件
Jenkins的功能由众多的插件提供,所以在此推荐一些常用插件,推荐在这个网站下载 http://updates.jenkins-ci.org/download/plugins/
推荐插件:
apache-httpcomponents-client-4-api.hpi
credentials.hpi
display-url-api.hpi
git-client.hpi
git.hpi
jsch.hpi
mailer.hpi
scm-api.hpi
script-security.hpi
ssh-credentials.hpi
structs.hpi
workflow-scm-step.hpi
workflow-step-api.hpi
第一个Jenkins项目
1. 创建
输入项目名称,选择对应的项目模板
在后续的创建中,新建项目如果只需要对另一个项目进行少量改动,可以在创建页面底端,从另一个项目克隆,输入想要克隆的项目关键词即可选择
2. 配置
General
- 丢弃旧的构建
设置构建的保留天数
- 参数化构建过程
源码管理
- Git
构建触发器
Build when a change is pushed to GitLab
如果需要使用这个选项,需要打开高级选项,然后见级Generate生成Secret token ,将Secret token填到Gitlab集成Webhook

构建
构建就是选择在构建时进行的操作,如何去构建项目
构建后操作
在这里选择构建完成后需要Jenkins进行的操作
3. 开始构建
- 立即构建
- Build with Parameters
在项目主页点击立即构建会根据设置的构建步骤开始构建
集成其他工具
1. Sonarqube
先在插件库搜索安装”SonarQube Scanner”
然后在系统设置中配置Sonarqube 服务器
初次使用添加一个新的服务器认证token
服务端配置完成后需要下载sonarqube scanner工具,解压到Jenkins机器中,本机解压在/usr/local/下
然后在系统设置==>全局工具设置中添加Sonarqube Scanner 的安装位置
最终推送命令为
/usr/local/sonar-scanner/bin/sonar-scanner -Dsonar.projectKey=HTML -Dsonar.sources=. -Dsonar.host.url="访问sonarqube地址" -Dsonar.login="生成的token"
2. maven
Jenkins插件库搜索安装”maven plugin”
Jenkins机器中安装maven
# 使用yum安装maven
yum install -y maven
# 使用压缩包的方式安装maven
tar xf apache-maven-3.6.3-bin.tar.gz -C /usr/local/ && ln -s /usr/local/apache-maven-3.6.3 /usr/local/maven
在系统设置==>全局工具设置中添加maven,使用yum安装的maven的MAVEN_HOME在/usr/share/maven,压缩包方式安装则是/usr/local/maven
maven默认带的仓库是maven中央仓库,国内的网络情况使用过于感人,所以修改为阿里云maven仓库,附赠一份设置文件,复制替换/etc/maven/setting.xml即可
<?xml version="1.0" encoding="UTF-8" ?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!--自定义本地仓库路径-->
<localRepository>/root/.m2/repository</localRepository>
<pluginGroups>
</pluginGroups>
<proxies>
</proxies>
<servers>
</servers>
<mirrors>
<mirror>
<id>alimaven-central</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<mirror>
<id>jboss-public-repository-group</id>
<mirrorOf>central</mirrorOf>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>jdk18</id>
<activation>
<jdk>1.8</jdk>
<activeByDefault>true</activeByDefault>
</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>
</profiles>
</settings>
添加从节点分布式构建(最后构建)
1. 从节点安装服务
将Jenkins主服务器已经配置好的服务拷贝到从节点
scp -r /usr/local/sonar-scanner 10.0.0.203:/usr/local/
# 如果是使用yum安装的maven则将maven配置文件拷贝过去即可
scp -r /usr/local/maven 10.0.0.203:/usr/local/
将部署服务使用的脚本拷贝到从节点
scp -r /scripts/ 10.0.0.203:/
将主节点的公钥发送到从节点
ssh-copy-id -i /root/.ssh/id_rsa.pub 10.0.0.203
2. Jenkins配置从节点



