a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 學(xué)院 > 操作系統(tǒng) > 正文

Jenkins 入門教程之--Jenkins安裝

2024-06-28 16:03:08
字體:
供稿:網(wǎng)友

Jenkins 教程

Jenkins是一個(gè)強(qiáng)大的應(yīng)用程序,允許持續(xù)集成和持續(xù)交付的項(xiàng)目,無論你正在工作的平臺(tái)。它是一個(gè)可以處理任何類型的構(gòu)建或持續(xù)集成的自由源。您可以將Jenkins與許多測試和部署技術(shù)集成。在本教程中,我們將解釋如何使用Jenkins來連續(xù)構(gòu)建和測試軟件項(xiàng)目。

本教程將幫助所有那些希望學(xué)習(xí)如何連續(xù)構(gòu)建和測試項(xiàng)目的軟件測試人員,以幫助開發(fā)人員盡快將更改集成到項(xiàng)目中并獲得新的構(gòu)建。

Jenkins是一個(gè)流行的工具,用于執(zhí)行軟件項(xiàng)目的持續(xù)集成。這是一個(gè)初步的教程,涵蓋了Jenkins的最基本的概念。任何對(duì)軟件開發(fā)生命周期有良好理解的軟件專業(yè)人員都應(yīng)從本教程中受益。

Jenkins - 概述

為什么是Jenkins?

Jenkins是一個(gè)允許持續(xù)集成的軟件。 Jenkins將安裝在將進(jìn)行中央構(gòu)建的服務(wù)器上。以下流程圖演示了Jenkins如何工作的非常簡單的工作流程。

這里寫圖片描述

與Jenkins一起,有時(shí),人們也可能看到Hudson的協(xié)會(huì)。 Hudson是一個(gè)非常受歡迎的開源的基于java的持續(xù)集成工具,由Sun Microsystems開發(fā),后來被Oracle收購。在Oracle收購Sun之后,從Hudson源代碼創(chuàng)建了一個(gè)fork,它引入了Jenkins的引入。

什么是持續(xù)集成?

持續(xù)集成是一種開發(fā)實(shí)踐,需要開發(fā)人員定期將代碼集成到共享存儲(chǔ)庫中。這個(gè)概念意在消除在構(gòu)建生命周期中發(fā)現(xiàn)問題的問題。持續(xù)集成需要開發(fā)人員頻繁構(gòu)建。通常的做法是,每當(dāng)代碼提交發(fā)生時(shí),應(yīng)該觸發(fā)構(gòu)建。

系統(tǒng)要求

JDKJDK1.5以上(示例JDK1.7)
內(nèi)存建議2GB以上
硬盤無最低要求、請(qǐng)注意,由于所有構(gòu)建都將存儲(chǔ)在Jenkins機(jī)器上,因此必須確保有足夠的磁盤空間用于構(gòu)建存儲(chǔ)。
操作系統(tǒng)版本Jenkins可以安裝在Windows,Ubuntu / Debian,Red Hat / Fedora / CentOS,Mac OS X,openSUSE,F(xiàn)ReeBSD,OpenBSD,Gentoo上。
Java 容器WAR文件可以在支持Servlet 2.4 / jsp 2.0或更高版本的任何容器中運(yùn)行(示例是Tomcat 7)。

Jenkins 安裝

下載Jenkins

Jenkins下載地址:https://jenkins.io/index.html

這里寫圖片描述

默認(rèn)情況下,最新版本和長期支持版本可供下載。過去的版本也可以下載。單擊下載部分的長期支持版本選項(xiàng)。

用于Jenkins的RedHat linux RPM軟件包

使用Jenkins官網(wǎng)提供的源下載Jenkins,服務(wù)器上面執(zhí)行下面命令:

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.reposudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key1212

如果你以前從Jenkins導(dǎo)入密鑰,’rpm –import’將失敗,因?yàn)槟阋呀?jīng)有一個(gè)密鑰。請(qǐng)忽略它,繼續(xù)下去。使用yum安裝Jenkins

yum install jenkins -y11

這里寫圖片描述

安裝穩(wěn)定版本

Redhat提供安裝Jenkins長期穩(wěn)定版本的源,參考下面命令安裝:

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.reposudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.keysudo yum install jenkins123123

安裝Java

Jenkins需要Java才能運(yùn)行,但是某些發(fā)行版默認(rèn)不包括這個(gè)。要安裝Open Java Development Kit(OpenJDK),請(qǐng)運(yùn)行以下命令,卸載Java(或如果您沒有安裝Java開始)。您需要安裝與Sun兼容的Java版本。最簡單的方法是使用OpenJDK,可以通過EPEL存儲(chǔ)庫(或者直接從Oracle安裝官方RPM)。要安裝OpenJDK,請(qǐng)運(yùn)行以下命令:

yum install java-1.7.0-openjdk11

根據(jù)您的CentOS版本,OpenJDK的程序包名稱可能不同。使用yum search openjdk來檢查包的名稱。如果通過yum找不到OpenJDK,您可能需要安裝EPEL yum存儲(chǔ)庫。安裝后,您應(yīng)該能夠獲得以下java -version的輸出

[root@jenkins ~]# java -versionjava version "1.7.0_121"OpenJDK Runtime Environment (rhel-2.6.8.1.el6_8-x86_64 u121-b00)OpenJDK 64-Bit Server VM (build 24.121-b00, mixed mode)12341234

啟動(dòng) Jenkins

執(zhí)行Jenkins的最簡單的方法是通過內(nèi)置的Jetty servlet容器。你可以這樣執(zhí)行Jenkins

$ java -jar jenkins.war11

在Linux上,使用nohup將Jenkins的輸出發(fā)送到日志文件,并后臺(tái)運(yùn)行Jenkins

$ mkdir /var/log/jenkins$ nohup java -jar jenkins.war >/var/log/jenkins/jenkins.log 2>&1 &1212

訪問Jenkins

訪問Jenkins只需要在客戶端瀏覽器輸入:http://ip、域名:8080/,即可

這里寫圖片描述

默認(rèn)初始訪問Jenkin需要管理員密碼,可以通過頁面提示操作查看管理密碼,查看Jenkins啟動(dòng)日志

cat /root/.jenkins/secrets/initialAdminPassWord11

輸入密碼,進(jìn)入Jenkins 設(shè)置界面

這里寫圖片描述

等待Jenkins自動(dòng)安裝相關(guān)插件

這里寫圖片描述

命令行參數(shù)

Jenkins通常使用端口8080啟動(dòng)。但是,如果您啟動(dòng)其他Web服務(wù),您可能會(huì)發(fā)現(xiàn)此端口已經(jīng)占用。您可以使用--httpPort = $ HTTP_PORT指定不同的端口,其中$ HTTP_PORT是Jenkins要運(yùn)行的端口。其他命令行參數(shù)包括:

命令行參數(shù)參數(shù)說明
--httpPort=$HTTP_PORT使用標(biāo)準(zhǔn)http協(xié)議在端口$ HTTP_PORT上運(yùn)行Jenkins偵聽器。默認(rèn)值為端口8080.要禁用(因?yàn)槟褂玫氖莌ttps),請(qǐng)使用端口-1
--httpListenAddress=$HTTP_HOST將Jenkins綁定到由$ HTTP_HOST表示的IP地址。默認(rèn)值為0.0.0.0 - 即偵聽所有可用的接口。例如,要僅偵聽來自localhost的請(qǐng)求,可以使用–httpListenAddress = 127.0.0.1
--httpsPort=$HTTP_PORT在端口$ HTTP_PORT上使用HTTPS協(xié)議
--httpsListenAddress=$HTTPS_HOST綁定Jenkins在$ HTTPS_HOST表示的IP地址上偵聽HTTPS請(qǐng)求。
--PRefix=$PREFIX運(yùn)行Jenkins以在URL的末尾包含$ PREFIX。例如,要使Jenkins可以在http // myServer 8080 / jenkins上訪問,請(qǐng)?jiān)O(shè)置–prefix = / jenkins
--ajp13Port=$AJP_PORT使用標(biāo)準(zhǔn)AJP13協(xié)議在端口$ AJP_PORT上運(yùn)行Jenkins偵聽器。默認(rèn)值為端口8009.要禁用(因?yàn)槟褂玫氖莌ttps),請(qǐng)使用端口-1。
--ajp13ListenAddress=$AJP_HOST將Jenkins綁定到由$ AJP_HOST表示的IP地址。默認(rèn)值為0.0.0.0 - 即偵聽所有可用的接口。
--argumentsRealm.passwd.$ADMIN_USER設(shè)置用戶$ ADMIN_USER的密碼。如果Jenkins安全性已打開,則必須以$ ADMIN_USER身份登錄才能配置Jenkins或Jenkins項(xiàng)目。注意還必須指定此用戶具有管理員角色。 (見下面的參數(shù))。
--argumentsRealm.roles.$ADMIN_USER=admin$ ADMIN_USER設(shè)置為管理用戶,如果Jenkins的安全性已打開,可以配置Jenkins。有關(guān)詳細(xì)信息,請(qǐng)參閱Jenkins安全。
-Xdebug -Xrunjdwp:transport=dt_socket,address=$DEBUG_PORT,server=y,suspend=n設(shè)置調(diào)試開關(guān),您可以訪問$ DEBUG_PORT上的調(diào)試。
logfile=$LOG_PATH/winstone_date +”%Y%m-%d_%H-%M”.log定義日志格式
-XX:PermSize=512M -XX:MaxPermSize=2048M -Xmn128M -Xms1024M -Xmx2048M參考Oracle Jave設(shè)置

Jenkins將所有(或只是引導(dǎo)參數(shù),直到第一個(gè)Jenkins特定的參數(shù)?)命令行參數(shù)傳遞給Winstone servlet容器,因此您可以通過查看Winstone命令行參數(shù)參考: http://winstone.sourceforge.net/#commandLine

注意命令行參數(shù)

Jenkins忽略了它不能理解的命令行參數(shù),而不是產(chǎn)生錯(cuò)誤。使用命令行參數(shù)時(shí)請(qǐng)小心,并確保您具有正確的拼寫。例如,定義Jenkins管理用戶所需的參數(shù)是–argumentsRealm而不是–argumentRealm。

Jenkins 啟動(dòng)腳本

#!/bin/shDESC="Jenkins CI Server"NAME=jenkinsPIDFILE=/var/run/$NAME.pidRUN_AS=jenkinsCOMMAND="/usr/bin/java -- -jar /home/jenkins/jenkins.war"d_start() { start-stop-daemon --start --quiet --background --make-pidfile --pidfile $PIDFILE --chuid $RUN_AS --exec $COMMAND}d_stop() { start-stop-daemon --stop --quiet --pidfile $PIDFILE if [ -e $PIDFILE ] then rm $PIDFILE fi}case $1 in start) echo -n "Starting $DESC: $NAME" d_start echo "." ;; stop) echo -n "Stopping $DESC: $NAME" d_stop echo "." ;; restart) echo -n "Restarting $DESC: $NAME" d_stop sleep 1 d_start echo "." ;; *) echo "usage: $NAME {start|stop|restart}" exit 1 ;;esacexit 012345678910111213141516171819202122232425262728293031323334353637383940414243441234567891011121314151617181920212223242526272829303132333435363738394041424344使用HTTPS與現(xiàn)有證書

如果您使用內(nèi)置的Winstone服務(wù)器設(shè)置Jenkins,并想要使用HTTPS的現(xiàn)有證書:

--httpPort=-1 --httpsPort=443 --httpsKeyStore=path/to/keystore --httpsKeyStorePassword=keystorePassword11

密鑰庫應(yīng)該是JKS格式(由JDK的keytool創(chuàng)建),密鑰庫和目標(biāo)密鑰必須具有相同的密碼。 (將密鑰庫參數(shù)放在Jenkins特定的參數(shù)后似乎不起作用;它們不會(huì)轉(zhuǎn)發(fā)到Winstone或Winstone忽略它們?cè)谖粗獏?shù)之后),因此,確保它們與工作的–httpsPort參數(shù)相鄰。

如果您的密鑰庫中包含多個(gè)證書(例如 您正在使用CA簽名的證書)Jenkins可能最終使用的是不正確的一個(gè)。 在這種情況下,你可以將密鑰存儲(chǔ)轉(zhuǎn)換為PEM并使用下面的命令行選項(xiàng)

--httpPort=-1 --httpsPort=443 --httpsCertificate=path/to/cert --httpsPrivateKey=path/to/privatekey11

Jenkins 參考鏈接

Jenkins 使用:https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins Jenkins 官網(wǎng)文檔:https://jenkins.io/doc/


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 精品久久一区 | 久久精品国产v日韩v亚洲 | 亚洲精品视频免费 | 欧美日韩精品一区二区三区四区 | 国产日韩中文字幕 | 久久亚洲精品中文字幕蜜潮电影 | 亚洲欧美aⅴ | 午夜激情视频 | 国产精品一区二区三区不卡视频 | 久草福利在线视频 | 极品美女av在线 | 最新日韩av网址 | 国产精品一码二码三码在线 | 久久国产视频一区二区 | 九九av | 操操网| 99国产视频| 国产一区二区三区免费 | 激情视频区 | 亚洲蜜桃精久久久久久久 | 国产伦精品一区二区三区在线 | 成人欧美一区二区三区在线播放 | 色婷婷亚洲一区二区三区 | 国产成人精品一区二区三区四区 | 91精品国产乱码久久久久久久久 | 看毛片的网址 | 青草青在线视频 | 91麻豆蜜桃一区二区三区 | 亚洲精品一区二区三区 | 成人欧美一区二区三区黑人 | 国产一区二区在线播放 | 中文字幕视频在线 | 久久国产香蕉视频 | 亚洲精品在线播放 | a级性视频| 精品国产乱码久久久久久丨区2区 | 色婷婷综合网 | 久久久精品一区二区 | 国产日韩欧美一区二区 | 啪啪免费小视频 | 极品美女一线天 |