安装

安装源、key
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
离线安装

创建文件夹

mkdir /usr/java

将安jdk-17_linux-x64_bin.tar.gz装包上传到该文件夹中并解压,自行去官网上下载

tar -zxvf jdk-17_linux-x64_bin.tar.gz

配置环境变量

vi /etc/profile

在文件末尾添加以下内容

#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

使配置生效

source /etc/profile

查看版本信息

java -version
image-20240820191516980
在线安装
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

image-20240827164604139

文件:jenkins-2.462.1-1.1.noarch.rpm

修改配置

vi /usr/lib/systemd/system/jenkins.service

改为

# 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

重新加载单元

systemctl daemon-reload

启动、开机启动

sudo systemctl start jenkins
sudo systemctl enable jenkins

验证是否安装成功

sudo systemctl status jenkins

image-20240816174950830

开启8080端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent
systemctl restart firewalld.service

在浏览器访问:服务器ip:8080可以看到以下页面

image-20240816175357346

初始化Jenkins

根据页面提示找到密码并填入

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

image-20240816175558572

image-20240816175622379

选择推荐的插件

image-20240816175649667

等待安装

image-20240816175716217

image-20240816180425179

安装失败的可以点击重试继续安装

创建用户,账号密码、邮箱全为admin

image-20240816180727076

点击保存并完成

image-20240816180812543

点击开始使用Jenkins

image-20240816180825509

构建完毕

image-20240816180844804

安装Git

先验证有没有安装

git -v

如果没有安装,执行安装命令:

yum install git

image-20240820175535143

查看安装git是否成功:

git -v
image-20240820175631911

安装Maven

创建文件夹

mkdir /usr/local/maven

切换到该目录下

cd /usr/local/maven

下载maven

wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.tar.gz

解压

tar -zxvf apache-maven-3.9.5-bin.tar.g

配置环境变量

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

使配置生效

source /etc/profile

查看maven版本

mvn -v
image-20240820180304584

创建本地仓库文件夹

mkdir /usr/local/maven/repo

赋予777权限

chmod 777 /usr/local/maven/repo

修改maven的setting.xml配置信息

vi /usr/local/maven/apache-maven-3.9.5/conf/settings.xml

配置本地仓库

<localRepository>/usr/local/maven/repo</localRepository>
image-20240820183811103

配置阿里云镜像加速

<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>*</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
image-20240820184035120

Jenkins工具配置

在Jenkins主页点击Manage Jenkins

image-20240820184339567

找到Tools点击

image-20240820184423677

配置JDK

点击新增 JDK

image-20240820184847084

指定别名、jdk安装主目录

image-20240820192025890

配置Git

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

image-20240820191950695

配置maven

点击新增 Maven

image-20240820192045110

指定名字和Maven的主目录

image-20240820192148505

点击保存,完成配置

配置环境变量

image-20240822172937657

添加全局环境变量

image-20240822173014261

配置JDK

JAVA_HOME

/usr/java/jdk-17.0.12

image-20240822173110057

配置Maven

M2_HOME

/usr/local/maven/apache-maven-3.9.5

image-20240822173153743

配置Maven命令path

PATH+EXTRA

$M2_HOME/bin

image-20240822173239353

然后保存

安装插件

SSH server插件

Jenkins打完包需要上传到新的服务器上,此处使用ssh的方式上传,添加ssh插件。

首页点击 Manage Jenkins

image-20240820192841392

找到Plugins

image-20240820192856849

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

image-20240820192945384

勾选安装完成之后重启Jenkins

image-20240820193111840

安装Maven插件

image-20240820194015027

角色管理插件
搜索安装

Role-based Authorization Strategy插件

image-20240822173906685

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

image-20240822174106212

选择Role-Based Strategy

image-20240822174134026

选择好后保存

image-20240822174210921

添加角色

image-20240822174234699

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

image-20240822174347006

勾选Read权限

image-20240822174414940

创建项目角色:goods_role,指定Pattern

pattern是一个表达式,可以用来指定该角色的用户可以访问什么样的项目

goods.* 表示只能访问名字以goods开头的项目,注意 . 是必须的

image-20240822174538160

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

image-20240822174703045

再创建order_role角色

image-20240822174736980

授予权限

image-20240822174824400

保存

image-20240822174904394

添加用户

image-20240822174933864

点击添加

image-20240822174945852

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

image-20240822175042546

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

image-20240822175101983

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

image-20240822175147370

给用户分配角色

image-20240822175511920

给用户分配全局角色

添加用户

image-20240822175544444

填写用户名

image-20240822175626398

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

image-20240822175713040

分配项目角色

点击添加用户

image-20240822175733005

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

image-20240822175803767

分配好之后点击保存

image-20240822175813976

新建项目

新建项目进行测试

image-20240822175830087

image-20240822175900087

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

image-20240822181017133

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

image-20240822175946687

image-20240822180002144

凭证管理

Manage Jenkins → Credentials

image-20240820200617514

image-20240820200710896

image-20240820200722917

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的凭证。

image-20240820200917085

image-20240820200929611

手动安装插件

以安装Credentials Binding为例

插件商店地址:https://plugins.jenkins.io/

输入框输入要安装的插件名字,点击搜索

image-20240820200058536

搜索到之后,点击卡片

image-20240820200121353

点击How to install获取安装说明

image-20240820200132826

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

image-20240820200141350

上图中是三种下载插件的方式

  • 第一种就是插件商店,但是我们此时的需求,插件商店没有,那么我们就需要使用另外两种下载插件的方式。

  • 方法二是命令工具,jenkins-plugin-cli是一个较新的工具,可能只在Jenkins 2.222及以上版本中提供。该命令不可用的原因还可能是安装方式不同,不在系统的PATH环境变量中。

  • 方法三就是通过连接下载部署的方式。

下面就是使用第三种方式安装

点击releases

image-20240820200220347

复制下载链接

image-20240820200245718

https://updates.jenkins.io/download/plugins/credentials-binding/681.vf91669a_32e45/credentials-binding.hpi

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

image-20240820200314106

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐