首页 > 其他分享 >Jenkins安装部署

Jenkins安装部署

时间:2023-02-21 22:24:04浏览次数:46  
标签:插件 角色 部署 https jenkins Jenkins 安装

一、Jenkins安装说明:

  官网:https://www.jenkins.io/zh/download/

  清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/

  Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。

  Jenkins是用Java开发的,安装Jenkins之前首先需要安装JDK

 二、安装Jenkins

  2-1、首先安装JDK

yum install java-1.8.0-openjdk* -y

  2-2、加载jenkins 8080端口到firewall防火墙规则中或关闭禁止firewall防火墙

  • 加载jenkins 8080端口firewall防火墙方法
firewall-cmd --permanent --add-port=8080/tcp

#重新加载防火墙配置
firewall-cmd --reload    
  • 关闭,禁止防火墙方法
systemctl disable firewalld
systemctl stop firewalld

  2-3、安装Jenkins

#安装Jenkins
cd /usr/local/src/

wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.356-1.1.noarch.rpm

yum install jenkins-2.356-1.1.noarch.rpm -y

  • 因jenkins安装/var/lib/jenkins存储目录空间小需要删除,在创建一个软连接指定/var/lib/jenkins目录

  创建目录为/data/jenkins 在对/data/jenkins更改权限操作步骤如下

#没有启动jenkins这个目录是空的,不需要做备份
rm -fr /var/lib/jenkins/

创建其它目录,建立软连接
mkdir -p /data/jenkins

chown -R jenkins:jenkins /data/jenkins/

ln -s /data/jenkins/ /var/lib/jenkins
  • 启动jenkins
systemctl enable --now jenkins

  2-4、配置Jenkins

  • 访问自己宿主机IP地址

  注:/var/lib/jenkins/secrets/initialAdminPassword 里面的密码只会保存24小时,24小时候这个文件会删除 

  • 出现以下图点击选择插件来安装操作

 

  注:如果有推荐安装插件的界面,不要安装任何插件,因为默认是连接国外下载插件。安装很慢或者不能安装。

    插件地址修改为国内地址后在下载插件

 

  •  进入下面图后点击无把推荐的安装进行取消

 

 

 注: 后面根据安装步骤提示操作即可

 

  •  安装完成后的界面

 

 

持续集成环境(2)-Jenkins插件管理

Jenkins本身不提供很多功能,我们可以通过使用插件来满足我们的使用。例如从Gitlab拉取代码,使用 Maven构建项目等功能需要依靠插件完成。

接下来演示如何下载插件。

修改 Jenkins 插件下载地址

Jenkins国外官方插件地址下载速度非常慢,所以可以修改为国内插件地址。

  • 第一步:修改升级站点URL

Jenkins->Manage Jenkins->Manage Plugins,点击Advanced

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

  • 第二步:修改下载URL
cd /var/lib/jenkins/updates/
sed -i 's/https:\/\/updates.jenkins.io\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json
sed -i 's/https:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

#重启jenkins
systemctl restart jenkins

汉化 Jenkins

默认情况下,Jenkins是英文的,可以使用插件汉化 Jenkins。

Jenkins->Manage Jenkins->Manage Plugins,点击 Available

持续集成环境(3)-Jenkins用户权限管理

我们可以利用 Role-based Authorization Strategy 插件来管理Jenkins用户权限。

安装 Role-based Authorization Strategy 插件

Jenkins->Manage Jenkins->Manage Plugins,点击 Available

 

开启权限全局安全配置

Jenkins -> 全局安全配置

创建角色

Jenkisn -> Manage and Assign Roles

 

 

 

  1. Global roles(全局角色):管理员等高级用户可以创建基于全局的角色
  2. Project roles(项目角色): 针对某个或者某些项目的角色
  3. Slave roles(奴隶角色):节点相关的权限(用的地方不多,暂且不予以深究)

我们姑且可以创建三个角色,分别是一个全局角色,两个项目角色。

  • base:该角色为全局角色。这个角色需要绑定Overall下面的Read权限,是为了给所有用户绑 定最基本的Jenkins访问权限

   注意:如果不给后续用户绑定这个角色,会报错误:用户名 is missing the Overall/Read permission

  • role1:该角色为项目角色。使用正则表达式绑定”Python.*”,意思是只能操作Python开头的项目。
  • role2:该角色也为项目角色。绑定”Java.*”,意思是只能操作Java开头的项目。

 

 

创建用户

在系统管理页面进入管理用户

 

 

 

给用户分配角色

系统管理页面进入Manage and Assign Roles,点击Assign Roles

绑定规则如下:

  • user1用户分别绑定base和role1角色
  • user2用户分别绑定base和role2角色

 

 

 

 

创建项目测试权限

以admin管理员账户创建两个项目,分别为Python和Java。

 登录user1用户只看到`Python。登录user2用户亦然

 

 

持续集成环境(4)-Jenkins凭证管理

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

安装Credentials Binding插件

要在Jenkins使用凭证管理功能,需要安装Credentials Binding插件。

 

  • Username with password:用户名和密码
  • SSH Username with private key: 使用SSH用户和密钥
  • Secret file:需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径 设置到一个变量中,等构建结束后,所复制的Secret file就会被删除。
  • Secret text:需要保存的一个加密的文本串,如钉钉机器人或Github的api token
  • Certificate:通过上传证书文件的方式

 

安装Git插件和Git工具

为了让Jenkins支持从Gitlab拉取源码,需要安装Git插件以及在CentOS7上安装Git工具。

注意:Jenkins 操作系统中必须安装 git,不然会报错。

Git插件安装

 
  • 首先在Jenkins服务器上面创建ssh 秘钥
ssh-keygen -t rsa

注:秘钥创建后保存在/root/.ssh 目录下面  

  • 添加 SSH 类型的密钥
Jenkins –> 系统管理 –> Manage Credentials –> 全局 –> 添加凭证

 

 

 

  •  将公钥添加至 Gitlab 中
 

 

 打开GitLab所需下载的项目,找到下面SSH克隆地址

 

 

 

 

 出现如下图问题:

 

 解决方法:https://www.cnblogs.com/albert919/p/16972324.html 

 

 

 

 

 

 

 

 

 

标签:插件,角色,部署,https,jenkins,Jenkins,安装
From: https://www.cnblogs.com/albert919/p/16750860.html

相关文章

  • redis安装使用
    1、redis五大数据类型,开发必会的技能string字符串类型hash哈希类型,如同Python的dict(字典)Set无序集合Zset有序集合List双向列队,向右插入数据,向左,右提......
  • k8s服务端二进制部署-kubectl
    本文章是 k8s二进制高可用集群部署 的分支。详细步骤请参考目录。二进制下载地址压缩包下载:https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG......
  • Android Studio的下载与安装
    一、下载下载官网:DownloadAndroidStudio&AppTools-AndroidDevelopers  点击绿色下载 ......
  • 安装gitlab
    1.配置yum源vim/etc/yum.repos.d/gitlab-ce.repo内容[gitlab-ce]name=GitlabCERepositorybaseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gpg......
  • Rocky Linux安装
    1.下载VirtualBox并安装https://www.virtualbox.org/wiki/Downloads2.下载RockyLinux选择Rocky-9.1-x86_64-dvd.iso镜像官网https://rockylinux.org/download......
  • poetry安装升级和换源
    一、安装pipinstall-U--userpippipxpipxinstallpoetrypoetry--version#Poetry(version1.3.2) 二、换源1.安装插件(https://github.com/arcesium/poe......
  • consul 安装使用
    安装dockerrun-d-p8500:8500-p8300:8300-p8301:8301-p8302:8302-p8600:8600/udpconsulconsulagent-dev-client=0.0.0.0 访问地址:http://192.168.244.......
  • 部署堡垒机2——安装MySQL8.0.32或8.0.28+
    MySQL的三大版本a)MySQLEnterpriseEdition:企业版本(付费)b)MySQLClusterCGE:高级集群版(收费)c)MySQLCommunityServer:社区版(开源) 登录MySQL官网https://www.mysql.com/d......
  • k8s多节点二进制部署以及Dashboard UI
    一、多Maser集群架构的了解Kubernetes作为容器集群系统,通过健康检查+重启策略实现了Pod故障自我修复能力,通过调度算法实现将Pod分布式部署,并保持预期副本数,根据Node失效......
  • [Android 逆向]绕过小米需插卡安装apk限制
    1.确保自己手机是root的了2.给手机安装busybox,使可以用vi编辑文件安装方法:0.adbshellgetpropro.product.cpu.abi获得cpu架构信息arm64-v8a1.下载https......