jenkins yum安装与管理

443 阅读4分钟

1.简介   Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

2.Jenkins自动化部署实现原理

3.Jenkins部署环境   基本环境:

  1.jdk环境,Jenkins是java语言开发的,因需要jdk环境。

  2.git/svn客户端,因一般代码是放在git/svn服务器上的,我们需要拉取代码。

  3.maven客户端,因一般java程序是由maven工程,需要maven打包,当然也有其他打包方式,如:gradle

  以上是自动化部署java程序jenkins需要的基本环境,请自己提前安装好,下面着重讲解Jenkins的安装部署配置。java需要安装两个,一个yum安装给jenkins依赖用,一个源码安装给jenkins配置用

4.Jenkins安装 1.下载依赖 yum install gcc c++ epel* wget

sudo wget -O /etc/yum.repos.d/jenkins.repo pkg.jenkins.io/redhat-stab… 2.导入秘钥

sudo rpm --import pkg.jenkins.io/redhat-stab… 3.安装

yum install jenkins java git -y #等待安装时间较长,约25min 4.启动前检查是否已安装jdk

java #显示java参数即证明已安装jdk 5.查找jenkins安装路径

rpm -ql jenkins

jenkins相关目录释义: (1)/usr/lib/jenkins/:jenkins安装目录,war包会放在这里。 ( 2 ) /etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配 置。 (3)/var/lib/jenkins/:默认的JENKINS_HOME。 (4)/var/log/jenkins/jenkins.log:jenkins日志文件。

6.配置jenkins (1)查找jenkins端口

vim /etc/sysconfig/jenkins :set ignorecase /jenkins_port 回车 (2)查看其他端口占用情况

netstat -ntlp systemctl daemon-reload

systemctl enable jenkins

systemctl start jenkins #启动jenkins,启动较慢需要等待

5)验证jenkins能否打开 在宿主机浏览器输入http://IP:Port 我这里输入:http://192.168.114.128:8080(修改端口后输入:http://192.168.114.128:8899)。

cat /var/lib/jenkins/secrets/initialAdminPassword =>获取密码=>输入密码=>继续 =>安装插件=>retry几次可安装成功 =>注册账号 (记录好账号密码) =>开始使用Jenkins

CentOS7安装jdk1.8 maven3.6 cd /usr/local/

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "download.oracle.com/otn-pub/jav…" tar xzf jdk-8u141-linux-x64.tar.gz

vi /etc/profile export JAVA_HOME=/usr/local/jdk1.8.0_141 export CLASSPATH=.:JAVAHOME/jre/lib/rt.jar:JAVA_HOME/jre/lib/rt.jar:JAVA_HOME/lib/dt.jar:JAVAHOME/lib/tools.jarexportPATH=JAVA_HOME/lib/tools.jar export PATH=PATH:JAVAHOME/binexportMAVENHOME=/usr/local/mavenexportPATH=JAVA_HOME/bin export MAVEN_HOME=/usr/local/maven export PATH=PATH:JAVAHOME/bin:JAVA_HOME/bin:MAVEN_HOME/bin

wget mirrors.tuna.tsinghua.edu.cn/apache/mave…

tar -xf apache-maven-3.6.3-bin.tar.gz -C /usr/local/ mv /usr/local/apache-maven-3.6.3/ maven source /etc/profile

mvn -v 进行全局工具配置

一,jenkins全局工具配置,maven.jdk和git需要配置路径,

管理插件安装-可选插件-Role-based Authorization Strategy 与 Authorize Project 安装下载 GitLab

Localization: Chinese(中文显示插件)Credentials Binding(凭证插件)Maven Integration(maven项目构建必须要) Git(拉取代码插件publish over ssh/ssh plugin(连接凭证) Deploy to container(部署到远程服务器容器)

which git

/usr/bin/git 安装路径

需要增加jdk的安装路径,上面maven配置默认,最下面那个新增maven填写安装路径

系统配置里面增加三个全局属性

JAVA_HOME

/usr/local/jdk1.8.0_141

M2_HOME /usr/local/maven

PATH+EXTRA $M2_HOME/bin

gitlab配置token作为gitlab访问秘钥,

Maven仓库地址更改,要改一个地方

vi /usr/local/maven/conf/settings.xml

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

mvn clean package #mvn打包命令

二,管理插件安装-可选插件-Role-based Authorization Strategy 与 Authorize Project 安装下载

Localization: Chinese(中文显示插件)Credentials Binding(凭证插件)Maven Integration Git(拉取代码插件publish over ssh/ssh plugin(连接凭证) GitLab

jenkins默认添加的所有用户都是拥有最高权限,这个插件用来分配权限

两个插件安装成功

三,配置全局安全Configure Global Security- 选上保存

管理角色授权,分配权限工具

jenkins误删管理员权限补救办法

1.修改jenkins服务器config.xml 我这里jenkins路径是 /var/lib/jenkins。

编辑之前先进行备份:

cp config.xml config.xml.bak 将 true 改为false。

2.重启jenkins service jenkins restart 此时已经关闭登录认证,不需要登录就可以访问jenkins地址,并具有所有权限。

3.修改全局安全配置 安全域选择 Jenkins’ own user database,否则会导致无法登录。网络策略我用的是 Role-Based Strategy(用户角色策略),这里再重新勾回去。然后重新配置一下权限,就可以恢复到之前的状态。

4.Jenkins凭证管理

下载安装插件

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

​​​​​​

     系统配置里面添加gitlab的token并且测试成功

采用ssh秘钥连接认证

到jenkins服务器上生成公私钥,公钥放复制到gitlab上,私钥复制放jenkins上

ssh-keygen -t rsa

cat id_rsa.pub

cat id_rsa

ssh配置成功

假如下载插件失败可以更换下载地址