安装
安装源、key
sh
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
yum install epel-release
安装jdk
离线安装
创建文件夹
sh
mkdir /usr/java
将安jdk-17_linux-x64_bin.tar.gz装包上传到该文件夹中并解压,自行去官网上下载
sh
tar -zxvf jdk-17_linux-x64_bin.tar.gz
配置环境变量
sh
vi /etc/profile
在文件末尾添加以下内容
sh
#java environment
export JAVA_HOME=/usr/java/jdk-17.0.12
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
使配置生效
sh
source /etc/profile
查看版本信息
sh
java -version

在线安装
sh
yum install java-11-openjdk-devel
依赖列表
copy-jdk-configs-4.0-3.el9.noarch java-11-openjdk-1:11.0.20.1.1-2.el9.x86_64
java-11-openjdk-devel-1:11.0.20.1.1-2.el9.x86_64 java-11-openjdk-headless-1:11.0.20.1.1-2.el9.x86_64
javapackages-filesystem-6.0.0-4.el9.noarch lksctp-tools-1.0.19-2.el9.x86_64
lua-5.4.4-4.el9.x86_64 lua-posix-35.0-8.el9.x86_64
mkfontscale-1.2.1-3.el9.x86_64 ttmkfdir-3.0.9-65.el9.x86_64
tzdata-java-2024a-2.el9.noarch xorg-x11-fonts-Type1-7.5-33.el9.noarch
安装jenkis
yum install jenkins

文件:jenkins-2.462.1-1.1.noarch.rpm
修改配置
sh
vi /usr/lib/systemd/system/jenkins.service
改为
sh
# Unix account that runs the Jenkins daemon
# Be careful when you change this, as you need to update the permissions of
# $JENKINS_HOME, $JENKINS_LOG, and (if you have already run Jenkins)
# $JENKINS_WEBROOT.
User=root
Group=root
重新加载单元
sh
systemctl daemon-reload
启动、开机启动
sh
sudo systemctl start jenkins
sudo systemctl enable jenkins
验证是否安装成功
sh
sudo systemctl status jenkins

开启8080端口
sh
firewall-cmd --zone=public --add-port=8080/tcp --permanent
systemctl restart firewalld.service
在浏览器访问:服务器ip:8080可以看到以下页面

初始化Jenkins
根据页面提示找到密码并填入
sh
sudo cat /var/lib/jenkins/secrets/initialAdminPassword


选择推荐的插件

等待安装


安装失败的可以点击重试继续安装
创建用户,账号密码、邮箱全为admin

点击保存并完成

点击开始使用Jenkins

构建完毕

安装Git
先验证有没有安装
sh
git -v
如果没有安装,执行安装命令:
sh
yum install git

查看安装git是否成功:
sh
git -v

安装Maven
创建文件夹
sh
mkdir /usr/local/maven
切换到该目录下
sh
cd /usr/local/maven
下载maven
sh
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.tar.gz
解压
sh
tar -zxvf apache-maven-3.9.5-bin.tar.g
配置环境变量
sh
vi /etc/profile
文件末尾添加以下配置
export M2_HOME=/usr/local/maven/apache-maven-3.9.5
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$M2_HOME/bin:$PATH
使配置生效
sh
source /etc/profile
查看maven版本
sh
mvn -v

创建本地仓库文件夹
sh
mkdir /usr/local/maven/repo
赋予777权限
sh
chmod 777 /usr/local/maven/repo
修改maven的setting.xml配置信息
sh
vi /usr/local/maven/apache-maven-3.9.5/conf/settings.xml
配置本地仓库
xml
<localRepository>/usr/local/maven/repo</localRepository>

配置阿里云镜像加速
xml
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

Jenkins工具配置
在Jenkins主页点击Manage Jenkins

找到Tools点击

配置JDK
点击新增 JDK

指定别名、jdk安装主目录

配置Git
输入名字、git路径,Git路径默认为:/usr/bin/git

配置maven
点击新增 Maven

指定名字和Maven的主目录

点击保存,完成配置
配置环境变量

添加全局环境变量

配置JDK
JAVA_HOME
/usr/java/jdk-17.0.12

配置Maven
M2_HOME
/usr/local/maven/apache-maven-3.9.5

配置Maven命令path
PATH+EXTRA
$M2_HOME/bin

然后保存
安装插件
SSH server插件
Jenkins打完包需要上传到新的服务器上,此处使用ssh的方式上传,添加ssh插件。
首页点击 Manage Jenkins

找到Plugins

选择available plugins在输入框中输入ssh server,在查询到的列表中勾选,然后点击安装

勾选安装完成之后重启Jenkins

安装Maven插件

角色管理插件
搜索安装
Role-based Authorization Strategy插件

安装完毕之后配置角色管理策略

选择Role-Based Strategy

选择好后保存

添加角色

添加一个全局角色login_role,指定基本登录功能

勾选Read权限

创建项目角色:goods_role,指定Pattern
pattern是一个表达式,可以用来指定该角色的用户可以访问什么样的项目
goods.* 表示只能访问名字以goods开头的项目,注意 . 是必须的

选择赋予权限,此处赋予全部权限,也可以根据实际情况进行授权

再创建order_role角色

授予权限

保存

添加用户

点击添加

指定用户名、密码、全名、邮箱,然后点击新建用户

创建完毕之后会在用户列表看到新建的用户

用同样的方式再创建一个用户

给用户分配角色

给用户分配全局角色
添加用户

填写用户名

用同样的方式再添加一个,然后分配login_role角色

分配项目角色
点击添加用户

添加方式与全局用户一致,添加完毕之后分别分配角色

分配好之后点击保存

新建项目
新建项目进行测试


用同样的方式再创建一个,创建完毕如下

此时注销账户,分别用xiang、elvis登录查看项目列表


凭证管理
Manage Jenkins → Credentials



Username with password:用户名和密码 比如使用Gitlab拉取代码
SSH Username with private key:使用SSH用户和密钥 SSH免密登录
Secret file:需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径设置到
一个变量中,等构建结束后,所复制的Secret file就会被删除。
Secret text:需要偃存的一个加密的文本串,如钉钉机器人或Github的api token
Certificate:通过上传证书文件的方式
常用的凭证类型有: Username with password(用户密码)和SSH Username with private key (SSH密
钥)
接下来以使用Git工具到Gitlab拉取项目源码为例,演示Jenkins的如何管理Gitlab的凭证。


手动安装插件
以安装Credentials Binding为例
插件商店地址:https://plugins.jenkins.io/
输入框输入要安装的插件名字,点击搜索

搜索到之后,点击卡片

点击How to install获取安装说明

在弹出框中可以看到3种安装方式

上图中是三种下载插件的方式
-
第一种就是插件商店,但是我们此时的需求,插件商店没有,那么我们就需要使用另外两种下载插件的方式。
-
方法二是命令工具,jenkins-plugin-cli是一个较新的工具,可能只在Jenkins 2.222及以上版本中提供。该命令不可用的原因还可能是安装方式不同,不在系统的PATH环境变量中。
-
方法三就是通过连接下载部署的方式。
下面就是使用第三种方式安装
点击releases

复制下载链接

在Jenkins的插件管理中填写链接,点击部署即可
