Jenkins环境

系统配置

Jenkins环境

jenkins主目录的设置:

默认jenkins的主目录是家目录下的.jenkins目录下如/root/.jenkins,也就是各种运行数据都会存储在这个目录下面空间会越战越大所以一般可以选择挂载盘将此目录存放到其他的挂载盘上面。

Jenkins环境
第一种方法:使用你Web容器的管理工具设置JENKINS_HOME环境参数

vim $CATALINA_HOME/bin/catalina.sh
export CATALINA_BASE=$CATALINA_BASE2
export CATALINA_HOME=$CATALINA_HOME2   #上面这句话和这句话是为了解决tomcat启动Cannot find /usr/local/apache-tomcat/bin/setclasspath.sh  This file is needed to run this program错误
export JENKINS_HOME="/data/.jenkins"   #这句话是为了改变jenkins主目录的位置

然后重启tomcat进行查看

ls -l /data/.jenkins/

第二种方法:在启动Web容器之前设置JENKINS_HOME环境变量

vim /etc/profile
export JENKINS_HOME=/data/.jenkins
source /etc/profile

第三种方法Jenkins不推荐:略

系统消息设置:

这个信息会显示在首页顶部. 用来向用户发布一些系统范围的通知或公告. 兼容HTML标签格式.
Jenkins环境
Jenkins环境

执行者数量设置:

#默认是2个执行者也就是说最高允许2个job运行,也就是并发数,显然不够用所以一般调大这里,不然jenkins多项目上线会出现经常排队现象
#另外标记用来记录这个机器的名称(为了分配节点使用)后面会用到。
Jenkins环境

用法设置:

默认尽可能使用这个节点
Jenkins环境

生成前等待时间设置:

#这个时间为构建开始前的等待时间,这里保持默认的5秒。
解释:

如果设置此选项,一个计划中的构建在开始之前需要等待选项中设置的秒数。 这会对下面的情况非常有用:
合并多封CVS变更通知邮件为一封(当一次提交跨越多个目录时,一些CVS的变更日志邮件发生脚本会接二连三的生成多封通知邮件)。
如果你的编码风格导致你更改一个逻辑需要几次cvs/svn操作,那么设置一个较长时间的等待会防止Jenkins过早的构建而失败。
节省构建。如果你的Jenkins有太多并且高频率的构建,设置长时间的等待会舒缓这些构建。
如果没有在项目级别设置此项,则会使用系统默认值。

scm签出重试次数设置:

#使用svn或者git拉取代码失败重试的次数,一般选择默认的0.

工程命名限制设置:

#命名规范,非必需。限制项目命名,勾选后可以看到具体设置,可以设置为默认或者使用正则表达式进行限制.

全局属性

#设置环境变量构建时可以调用,环境变量也可以自定义
Jenkins环境

Jenkins默认全局设置环境变量:

BUILD_NUMBER   #当前的内部版本号,例如“153”
BUILD_ID       #当前构建ID,例如“2005-08-22_23-59-59”(YYYY-MM-DD_hh-mm-ss,自1.597版本以来已解散)
BUILD_URL      #可以找到此构建结果的URL(例如http://buildserver/jenkins/job/MyJobName/666/)
NODE_NAME      #当前构建运行的节点的名称。等于主节点的“master”。
JOB_NAME       #此构建的项目名称。这是您第一次设置时给出的工作名称。这是Jenkins Dashboard主页的第三列。
BUILD_TAG      #jenkins字符串 jenkins-${JOB_NAME}-${BUILD_NUMBER}。方便放入资源文件,jar文件等,以便于识别。
JENKINS_URL    #设置为运行构建的Jenkins主服务器的URL。例如,Jenkins CLI使用此值
EXECUTOR_NUMBER  #标识正在执行此构建的当前执行程序(在同一计算机的执行程序之间)的唯一编号。这是您在“构建执行程序状态”中看到的数字,但该数字从0开始,而不是1。
JAVA_HOME   #如果您的作业配置为使用特定的JDK,则此变量将设置为指定JDK的JAVA_HOME。设置此变量后,PATH也会更新为$JAVA_HOME/bin。
WORKSPACE   #工作空间的绝对路径。
SVN_REVISION  #对于基于Subversion的项目,此变量包含模块的修订号。如果指定了多个模块,则不会设置此模块。
CVS_BRANCH   #对于基于CVS的项目,此变量包含模块的分支。如果CVS配置为检出主干,则不会设置此环境变量。
GIT_COMMIT   #对于基于Git的项目,此变量包含为构建签出的提交的Git哈希(如ce9a3c1404e8c91be604088670e93434c4253f03)(所有GIT_ *变量都需要git插件)
GIT_URL    #对于基于Git的项目,此变量包含Git url(如git@github.com:user/repo.git or [https://github.com/user/repo.git]])
GIT_BRANCH  #对于基于Git的项目,此变量包含为构建检出的Git分支(通常为origin/master)
中文设置:

#需要安装 Locale plugin 插件
Jenkins环境

Gitlab

#需要安装Gitlab插件
Jenkins环境

使用统计设置:

#通过发送匿名的使用信息以及程序崩溃报告来帮助Jenkins做的更好。(默认是勾选的可以不提交崩溃报告)

Timestamper设置:

#设置时间格式第一个是系统时间第二个是构建时间表示默认就可以。

Jenkins Location设置:

#设置jenkins的url(发送邮件引用jenkins的地址会取这个值,如果设错了,邮件的连接就会打不开)
#系统管理员邮件地址:管理员的邮件地址(在构建需要发送邮件时,会用到这个邮件地址)

GitHub

#GitHub与Gitlab设置大致同理

邮件通知

#首先一定要设置系统管理员邮件地址:与使用SMTP认证的邮箱账号相同
Jenkins环境

全局安全配置

Jenkins环境
下面记录下每个权限所代表的意思(从左向右):

#全部
Administer  #该权限允许修改系统级别的配置,也就是执行高度敏感的操作,例如挂在本地系统访问(这就赋予了基本的操作系统权限)。
Read   #读权限对于查看Jenkins的大部分页面是必须的。当你不希望未认证的用户看到Jenkins页面时,该权限就很有用:从匿名用户中取消该权限,然后给受认证的用户赋予该权限。
#凭证
Create  #创建权限是将凭据添加到凭据提供程序所必需的。
Delete    #删除权限是删除凭证提供程序中存储的凭据所必需的。
ManageDomains  #管理域权限是添加/删除/配置凭据提供程序的凭据域(凭证提供程序支持多个凭据域)所必需的。
Update   #更新权限是修改凭据提供程序中的凭据所必需的。
View   #查看权限是查看凭证提供程序中存储的凭据所必需的。
#代理
Build   #该权限允许用户在代理上允许任务。
Configure  #该权限允许用户配置代理。
Connect  #该权限允许用户连接代理或者让代理上线。
Create   #该权限允许用户创建代理。
Delete   #该权限允许用户删除已存在的代理。
Disconnect  #该权限允许用户断开或者临时下线代理。
#任务
Build   #该权限允许启动一个新的构建任务。
Cancel  #该权限允许取消计划或终止运行中的构建任务。
Configure  #修改任务的配置。
Create   #创建新的任务。
Delete   #删除任务。
Discover  #该权限允许查找任务。比读取的权限低,当用户试图访问任务时会重定向到登录页面。如果没有该权限,就不能查找工程名称,并会得到404错误。
Read   #查看任务。(可以拒绝该权限,但允许发现,迫使匿名用户登录到看到任务)
Workspace  #该权限允许获取Jenkins执行构建任务时检出的工作空间内容。如果你不希望用户访问工作空间中的文件(例如:SCM检出的源码或者构建的中间产物),你可以取消该权限。
#运行
Delete  #该权限允许用户从构建历史中手动删除指定的记录
Replay  #能够使用编辑过的脚本执行新的管道构建。
Update  #该权限允许用户修改一次构建的描述或者其他属性,例如:描述构建失败的原因。
#视图
Configure  #该权限允许用户改变视图的配置。
Create   #该权限允许用户创建新的视图。
Delete   #该权限允许用户删除已有的视图。
#SCM
Read   #该权限允许用户查看视图(允许读取访问)。
Tag   #该权限允许用户在代码库中给指定的构建创建新的标签
Markup Formatter设置:

标记格式器
Jenkins环境
#不然的话,Jenkins的view、Job和每次构建的备注及description不支持使用HTML语法编辑备注信息,非常影响观赏性,所以按上面选择。#要展示这个HTML效果需要安装OWASP Markup Formatter插件。

CSRF Protection设置:

跨站请求伪造保护
Jenkins环境
其余设置保持默认

凭据配置

#凭证配置需要的插件是:Credentials 一般都是默认安装的

基本不用改默认就是所有可见。
有许多第三方网站和应用程序可以与 Jenkins 进行交互,例如程序代码仓库,云存储系统和服务等。
此类应用程序的系统管理员可以在应用程序中配置凭证以专供 Jenkins 使用。通常通过将访问控制应用于这些凭证来完成这项工作,以“锁定”Jenkins可用的应用程序功能区域。一旦 Jenkins 管理员(即管理 Jenkins 站点的 Jenkins 用户)在 Jenkins 中添加/配置这些凭证,Pipeline 项目就可以使用凭证与这些第三方应用程序进行交互。

Providers设置:
Jenkins 凭据提供者  #提供Jenkins根目录的凭据。 凭证将可用于:身份验证:SYSTEM;有权限的用户:任务/配置。凭证将在以下位置提供:Jenkins中的所有项目都可以使用全局范围的凭据,系统范围的凭据仅限于系统级操作,例如连接构建代理。
User Credentials Provider(用户凭据提供程序)  #为每个用户提供个人凭证存储。 凭证将可用于:由定义凭证的用户执行的即时操作;具有凭据参数的作业,当具有权限的用户直接触发时:任务/构建;以用户身份运行的作业和用户具有权限:任务/构建;
Types

#类型

Username with password   #可以作为单独的组件处理,也可以作为 username:password 格式的冒号分隔字符串来处理
Docker Host Certificate Authentication   #Docker 主机证书身份验证凭证
SSH Username with private key   #带有私钥的SSH用户名
Secret file #点击 File 字段旁边的 Choose file 按钮,选择 secret 文件并上传到 Jenkins
Secret text #复制 secret 文本并粘贴到 Secret 字段
Certificate     #指定证书和可选的密码。上传 PKCS#12 证书
两种类型的凭证

第一种私钥凭证:
Jenkins环境
第二种用户名密码:
Jenkins环境

全局工具配置(Global Tool Configuration)

Maven Configuration(Maven配置):

Default settings provider    #Use default maven settings(使用默认的maven设置);Settings file in filesystem(文件系统中的设置文件),settings.xml文件的路径,相对于项目工作空间或绝对值(支持变量)。
Default global settings provider  #Use default maven global settings(使用默认的maven全局设置);Global settings file on filesystem(文件系统上的全局设置文件)。

#配置Maven主要是配置Maven的settings.xml文件,Jenkins在构建Maven项目时需要依靠该配置文件来执行Maven。
Jenkins环境
需要什么工具下载安装添加上对应的目录和别名

读取设置

#放弃当前内存中所有的设置信息并从配置文件中重新读取仅用于当您手动修改配置文件时重新读取设置。
#意思很明显当你修改了config.xml文件的时候除了重启默认是不会读取config.xml文件里面的信息的当然可以点击这里让Jenkins在不重启服务的情况下加载config.xml里面的内容。

管理插件

#这个就是想用啥就安装啥插件更新删除本地上传插件之类的。

系统信息

#Jenkins所在机器的一些信息。

系统日志

#系统日志从java.util.logging捕获Jenkins相关的日志信息。

管理节点

#就是jenkins多实例的设置,不然默认就jenkins所在的这台机器执行job。前置条件:节点服务器应与jenkins主服务器环境路径统一,比如:JDK,ant等。
Jenkins环境

#新建节点一般是字母和数字构成有点标示性,发布的话可能会有前端\php\java环境等等,然后末尾是编号或者是机器IP末尾,这样就不用老去看节点配置才知道节点的IP了。
Jenkins环境
#上面SSH控制代理节点的方式需要安装插件:SSH Credentials和SSH Slaves

#高级还是要点一下的,Java 路径要配置一下l例如设置成(/usr/java/jdk/bin/java),不然就跑到从节点的/data/jenkins_workspace下面去找java命令了。

#然后权限一般就是密码或者是秘钥的形式,在第一次节点连接过程中可以查看日志看看哪里有问题。另外从节点的maven啊ant啊之类的软件环境最好保持跟主节点一致。
博文借鉴:http://www.51niux.com/?id=224
经过测试

转载于:https://blog.51cto.com/13767724/2398444

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值