CentOS 7安装Jenkins

前提条件:安装JDK,这里小编安装的JDK1.8

查看JDK安装位置:echo $JAVA_HOME
linux安装jdk1.8:https://www.cnblogs.com/w-wu/p/13684480.html

如果你的系统没有自带git,那么也需要安装一个

yum install git

1. 第一种安装方式

1.1 进入官网:https://www.jenkins.io/

点击Download,找到内容并点击,根据提示进行安装即可。
在这里插入图片描述

1.2 安装

执行命令1:

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

可能出现下方提示:
在这里插入图片描述
解决方案:
安装ca-certificates

yum install -y ca-certificates

再执行命令1

执行命令2:

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

执行命令3:

yum install jenkins

查看可安装版本:yum list --showduplicates jenkins
安装指定版本:yum install jenkins-2.234-1.1
更新到指定版本:yum update jenkins-2.235.5-1.1
使用yum安装程序时,提示xxx.rpm公钥尚未安装
命令后加上–nogpgcheck跳过公钥检查

有可能出现下面报错:
在这里插入图片描述
原因:
很多软件包在yum里面没有的,解决的方法,就是使用epel源,也就是安装epel-release软件包。EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS等系统。可以在下面的网址上找到对应的系统版本,架构的软件包。

解决方案:

yum -y install epel-release

安装完之后再执行命令3,发现居然无效,于是我打算升级一下yum

yum upgrade

yum update和yum upgrade的真正区别:
yum -y update:升级所有包同时,也升级软件和系统内核;
yum -y upgrade:只升级所有包,不升级软件和系统内核,软件和内核保持原样。

升级完之后再次执行命令3,发现然并卵…

于是乎我打算卸载Jenkins重新执行以上命令,

1、rpm卸载
rpm -e jenkins
2、检查是否卸载成功
rpm -ql jenkins
3、彻底删除残留文件:
find / -iname jenkins | xargs -n 1000 rm -rf

咦,这回居然可以了…
在这里插入图片描述

2. 第二种安装方式:直接下载 rpm 安装

官方似乎找不到rpm的包了,可以去清华大学开源软件镜像站下载:https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/

将下载好的rpm包上传到linux,进入到刚才上传的rpm包所在的目录,执行安装命令:

rpm -ivh jenkins-2.263.3-1.1.noarch.rpm

jenkins-2.263.3-1.1.noarch.rpm为刚才下载的rpm包名

3. 修改Jenkins配置

主要是修改两个地方:
第一个是账户:因为Jenkins默认的账户是jenkins的账户,这个账户我们没有,而且为了不因为权限出现各种问题,这里直接使用root,当然你也可以创建一个名叫jenkins的账户
第二个是端口:Jenkins的默认端口是8080,为了避免端口冲突,我们将它改掉

执行命令:

vim /etc/sysconfig/jenkins

在这里插入图片描述
启动Jenkins:

systemctl start jenkins

好家伙,又报错了
在这里插入图片描述
错误信息如下:

Job for jenkins.service failed because the control process exited with error code. See "systemctl status jenkins.service" and "journalctl -xe" for details.

解决方案:
查看当前Java的环境变量 echo $JAVA_HOME
复制Java的环境变量地址, 编辑/etc/init.d/jenkins文件, 指定位置添加该地址, 后缀附上/bin/java

vim /etc/init.d/jenkins

在这里插入图片描述
修改完之后重新加载一下配置文件,使其生效:

systemctl daemon-reload

然后启动jenkins,将刚才修改的jenkins的8888端口放开或者直接关闭防火墙,这里我们直接关闭防火墙:

systemctl stop firewalld

重启jenkins命令:systemctl restart jenkins

4. Jenkins使用

在浏览器输入:ip:8888,直接访问jenkens
例如:192.168.12.132:8888
在这里插入图片描述
这里让我们输入管理员密码,密码的位置已经告诉我们了,查看密码:

cat /var/lib/jenkins/secrets/initialAdminPassword

输入密码,点击继续,
在这里插入图片描述
这里我们点击第二个,跳过插件安装,因为Jenkins插件需要连接默认官网下载,速度非常慢,而且经常会失败,所以我们暂时先跳过插件安装。
在这里插入图片描述
创建用户,随便创建,这里小编使用的用户名密码都是jenkins
然后一直下一步下一步就行了。

4. 安装插件

刚才在引导界面我们并没有选择安装插件,原因是因为jenkins默认从它的官网下载插件会非常慢,接下来我们将插件下载地址换成国内的。
4.1、点击Manage Jenkins—>Manage Plugins
在这里插入图片描述
4.2 点击Available,等页面测底加载完毕,这里会加载一些可以用的官方的一些插件的文件地址。
在这里插入图片描述
4.3 进入到jenkins的默认的开发目录

cd /var/lib/jenkins/
ll

可以看到里面有一个updates目录
在这里插入图片描述
在updates目录里面有一个default.json文件,这个文件里面有所有的插件的地址,这里面的地址记录的是国外的地址,所以是很慢的。
在这里插入图片描述
进入到updates目录执行命令:

cd /var/lib/jenkins/updates
sed -i 's/http:\/\/updates.jekins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

命令大概意思是:将jenkins官方地址替换为清华大学的地址,将google地址替换为百度地址

最后点击Advanced,
在这里插入图片描述
下拉到最后方,将里面jenkins官方地址替换为清华大学地址:

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

在这里插入图片描述

点击Submit后,重启jenkins
http://ip:8080/restart

5. 下载汉化插件

点击Manage Jenkins—>Manage Plugins—>Available
在搜索框输入:chinese
勾选复选框,点击下载完之后立刻重启。
在这里插入图片描述
等待下载…下载完勾选最后一行复选框就自动重启了
在这里插入图片描述

6. 安装用户权限管理插件:Role-based Authorization Strategy

因为Jenkins并没有完善的权限管理,所以需要安装插件来实现权限管理。
与汉化插件安装方法一样:
在这里插入图片描述
安装完之后,点击Manage Jenkins—>Configure Global Security
在这里插入图片描述
找到:授权策略
选择Role-Based Strategy
点击保存
在这里插入图片描述
6.1 管理角色
找到Manage Jenkins—>Manage and Assign Roles
在这里插入图片描述
在这里插入图片描述
进去之后可以看到有三种角色:Global roles、Item roles、Node roles
顾名思义:
Global roles:全局角色,最高权限的角色,我们刚创建的jenkins用户就是这个权限
Item roles:项目角色,针对项目分配的角色,例如不同的项目被不同的人访问,就使用这种角色
Node roles:节点角色,Jenkins主从的时候用到

创建角色:
在这里插入图片描述
在这里插入图片描述

ps:
步骤一:项目角色名
步骤二:表达式,表示可以访问test开头的项目

6.2 创建用户
找到:Manage Jenkins—>Manage Users—>新建用户
在这里插入图片描述
刚创建的用户是没有任何的权限的,注销当前用户,登录刚创建的dev用户:
在这里插入图片描述
6.3 给用户分配角色
找到:Manage Jenkins—>Manage and Assign Roles—>Assign Roles
在这里插入图片描述
点击save之后,登录dev用户,发现是看不到项目相关的目录:
在这里插入图片描述
给dev用户分配项目相关角色:
在这里插入图片描述
6.4 新建项目在这里插入图片描述
在这里插入图片描述

7. Jenkins凭证管理

凭据可以用来存储需要密文保护的数据库密码、Gitlab密码信息、Docker私有仓库密码等,以便enkins可以和这些第三方的应用进行交互。

安装credentials Binding插件
要在Jenkins使用凭证管理功能,需要安装Credentials Binding插件
在这里插入图片描述
安装插件后,在Manage Jenkins的Security模块,看到Manage Credentials,在这里管理所有凭证

低版本的在菜单栏左侧会有"凭证"菜单

在这里插入图片描述
点击Manage Credentials—>全局—>添加凭据
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如上图所示,其中类型包括以下种:
在这里插入图片描述
第一种:用户名和密码,例如用户名密码方式从Git拉取代码
第二种:SSH方式(公钥&私钥),例如SSH方式从Git拉取代码
第三种:秘密文件方式
第四种:秘密文本方式
第五种:证书方式

第一种方式举例:gitee凭据
在这里插入图片描述
点击确定即可!

8. 创建项目&&拉取代码

安装Git插件:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

点击确定之后往下滑—>源码管理:
在这里插入图片描述
点击应用、保存之后:
在这里插入图片描述
即可拉取代码成功!

9. Linux安装Maven和配置

小编这里安装apache-maven-3.6.1版本。
安装完之后,配置环境变量:

vi /etc/profile

在这里插入图片描述
最后两行是maven的环境变量,其中:/db/apache-maven-3.6.1是maven的安装目录。
然后执行命令,使配置生效:

source /etc/profile
# 查看mavne版本
mvn -v

修改maven的settings.xml配置文件:

# 进入maven安装目录
cd /db/apache-maven-3.6.1/
# 创建repo目录
mkdir repo
# 进入maven配置文件目录
cd /db/apache-maven-3.6.1/conf/
# 编辑配置文件
vi settings.xml

本地仓库地址:
在这里插入图片描述
阿里云依赖镜像地址:
在这里插入图片描述

9. Jenkins配置Maven&JDK

找到:Manage Jenkins—>Global Tool Configuration
在这里插入图片描述
在这里插入图片描述
找到:Manage Jenkins—>Configure System—>全局属性
在这里插入图片描述

10. Jenkins项目编译

找到项目配置,添加构建步骤
在这里插入图片描述
输入:

echo "项目开始打包"
mvn clean install package -T 1C -Dmaven.test.skip=true
echo "项目打包完成"

-T 1C参数解释:
例如:用 4 个线程构建,以及根据 CPU 核数每个核分配 1 个线程进行构建
$ mvn -T 4 clean install
$ mvn -T 1C clean install

11. 安装Maven Integration插件构建Maven风格项目

在这里插入图片描述

12. 参数化构建-Git Paramete插件

在这里插入图片描述
在这里插入图片描述
效果:
在这里插入图片描述

13. 远程发布

可参考最新文章:
https://blog.csdn.net/RookiexiaoMu_a/article/details/128589691?spm=1001.2014.3001.5501

新建一个自由风格项目:
在这里插入图片描述
配置构建操作:
在这里插入图片描述

if [ -e "*.jar" ]; then 
    rm -rf *.jar
fi
cd /db/isee/
cp /var/lib/jenkins/workspace/isee-package-maven/isee-service/isee-api/target/*.jar isee-api.jar

配置构建后操作:

14. 安装Pipeline插件构建流水线项目

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/RookiexiaoMu_a/article/details/122655272