Jenkins環境

系統配置

Jenkins環境

jenkins主目錄的設置:

默認jenkins的主目錄是家目錄下的.jenkins目錄下如/root/.jenkins,也就是各類運行數據都會存儲在這個目錄下面空間會越戰越大因此通常能夠選擇掛載盤將此目錄存放到其餘的掛載盤上面。php

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進行查看java

ls -l /data/.jenkins/

第二種方法:在啓動Web容器以前設置JENKINS_HOME環境變量git

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

第三種方法Jenkins不推薦:略github

系統消息設置:

這個信息會顯示在首頁頂部. 用來向用戶發佈一些系統範圍的通知或公告. 兼容HTML標籤格式.
Jenkins環境
Jenkins環境正則表達式

執行者數量設置:

#默認是2個執行者也就是說最高容許2個job運行,也就是併發數,顯然不夠用因此通常調大這裏,否則jenkins多項目上線會出現常常排隊現象
#另外標記用來記錄這個機器的名稱(爲了分配節點使用)後面會用到。
Jenkins環境apache

用法設置:

默認儘量使用這個節點
Jenkins環境vim

生成前等待時間設置:

#這個時間爲構建開始前的等待時間,這裏保持默認的5秒。
解釋:tomcat

若是設置此選項,一個計劃中的構建在開始以前須要等待選項中設置的秒數。 這會對下面的狀況很是有用:
合併多封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 通過測試

相關文章
相關標籤/搜索