日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CentOS 7.2安装Jenkins自动构建Git项目

發(fā)布時間:2024/1/17 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CentOS 7.2安装Jenkins自动构建Git项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.環(huán)境

本文使用VMWare虛擬機進行實驗。

最終實現目標,在Jenkins服務器上新建構建任務,從Git服務器上拉取master HEAD(不編譯,僅演示),部署到"目標服務器",再執(zhí)行一個腳本。

?

Jenkins服務器

  • 2核CPU,4GB內存,20GB硬盤,IP:192.168.118.145(要求能上網,裝插件)
  • CentOS 7.2最小安裝(CentOS-7-x86_64-Minimal-1511.iso)

?

Git遠程庫服務器

  • IP:?192.168.118.148
  • 已經存在一個git repo: hello-jenkins.git

?

目標服務器

  • IP:?192.168.118.147

2.需求

  • Jenkins?2.89
  • JRE 8u162
  • Git?1.8.3.1
  • Supervisor?3.1.4

3.安裝

3.1安裝軟件

yum -y install git supervisor

?

3.2安裝JRE

從官網下載Java SE Runtime Environment 8u162 Linux x64

jre-8u162-linux-x64.tar

tar zxvf jre-8u162-linux-x64.tar -C /opt export JAVA_HOME=/opt/jre1.8.0_162 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/toos.jar

?

3.3安裝Jenkins

官網下載Jenkins,安裝

rpm -ivh jenkins-2.89.3-1.1.noarch.rpm

得到war包 ?/usr/lib/jenkins/jenkins.war?

?

其實到現在已經可以運行Jenkins服務了,但我們先來配置下開機自動啟動(利用supervisor)

?

3.4配置Jenkins開機自啟

為jenkins創(chuàng)建supervisor配置文件

vi /etc/supervisord.d/jenkins.ini

?

添加如下內容,藍色加粗的是有用的,分號開頭的已經被注釋掉了,需要的話自己開、自己配

[program:jenkins] ;command=/bin/cat command=/opt/jre1.8.0_162/bin/java -jar /usr/lib/jenkins/jenkins.war ; the program (relative uses PATH, can take args) ;process_name=%(program_name)s ; process_name expr (default %(program_name)s) ;numprocs=1 ; number of processes copies to start (def 1) ;directory=/tmp ; directory to cwd to before exec (def no cwd) ;umask=022 ; umask for process (default None) ;priority=999 ; the relative start priority (default 999) autostart=true ; start at supervisord start (default: true) autorestart=true ; retstart at unexpected quit (default: true) startsecs=10 ; number of secs prog must stay running (def. 1) ;startretries=3 ; max # of serial start failures (default 3) ;exitcodes=0,2 ; 'expected' exit codes for process (default 0,2) ;stopsignal=QUIT ; signal used to kill process (default TERM) ;stopwaitsecs=10 ; max num secs to wait b4 SIGKILL (default 10) ;user=chrism ; setuid to this UNIX account to run the program ;redirect_stderr=true ; redirect proc stderr to stdout (default false) ;stdout_logfile=/a/path ; stdout log path, NONE for none; default AUTO ;stdout_logfile_maxbytes=1MB ; max # logfile bytes b4 rotation (default 50MB) ;stdout_logfile_backups=10 ; # of stdout logfile backups (default 10) ;stdout_capture_maxbytes=1MB ; number of bytes in 'capturemode' (default 0) ;stdout_events_enabled=false ; emit events on stdout writes (default false) ;stderr_logfile=/a/path ; stderr log path, NONE for none; default AUTO ;stderr_logfile_maxbytes=1MB ; max # logfile bytes b4 rotation (default 50MB) ;stderr_logfile_backups=10 ; # of stderr logfile backups (default 10) ;stderr_capture_maxbytes=1MB ; number of bytes in 'capturemode' (default 0) ;stderr_events_enabled=false ; emit events on stderr writes (default false) ;environment=JAVA_HOME=/opt/jre1.8.0_162,CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/toos.jar ; process environment additions (def no adds)

?

添加supervisor開機自啟,注意現在不要啟動(start),一會兒我們手動啟動

systemctl enable supervisord

?

4.運行

java -jar /usr/lib/jenkins/jenkins.war

?

初次運行Jenkins會開始安裝、配置,注意控制臺會輸出admin的密碼(類似下面藍色粗體),密碼要記住,新建用戶后這密碼就找不到了...

************************************************************* ************************************************************* *************************************************************Jenkins initial setup is required. An admin user has been created and a password generated. Please use the following password to proceed to installation:d4b41da7b70048c8b2a4eb5786100996This may also be found at: /root/.jenkins/secrets/initialAdminPassword************************************************************* ************************************************************* *************************************************************

?

默認Jenkins服務器端口為8080

瀏覽器訪問?http://192.168.118.145:8080/,把密碼填進去,下一步

?

會讓你選擇安裝插件,其實安裝建議的就行,但這里選擇自己安裝插件

?

注意Git要勾選,

?

另外勾選“Publish Over SSH”,部署的時候會用到

?

然后確定開始下載安裝插件,看網速...完了之后會進入賬戶設置,

?

設置完就進入主界面了

到這里就Jenkins安裝好了,系統(tǒng)重啟會自動啟動Jenkins服務。

?

5.部署demo

?最終實現目標,在Jenkins服務器上新建一個構建任務,這個任務從Git服務器上拉取master HEAD(不編譯,僅演示),部署到"目標服務器",再執(zhí)行其中一個腳本。

?

5.1配置ssh key

這個Key用于訪問git、訪問“目標服務器”

?

在Jenkins服務器上,-C后面的注釋隨便寫,交互shell中不用管,一路回車就行

ssh-keygen -t rsa -C "jenkins@admin.com"

生成的公鑰文件/root/.ssh/id_rsa.pub、私鑰文件/root/.ssh/id_rsa.pub

?

為了ssh無密碼訪問(使用root用戶),我們要把公鑰注冊到目標上

在Git服務器上,把公鑰內容復制填進去,保存。

vi /root/.ssh/authorized_keys

?

在目標服務器(見環(huán)境一節(jié)介紹)上,把公鑰內容復制填進去,保存。

vi /root/.ssh/authorized_keys

?

5.2注冊Jenkins SSH Server

主界面---系統(tǒng)管理---系統(tǒng)設置---Publish over SSH(在最下面)

?

Path to key 填私鑰文件路徑(公鑰剛才已經傳到目標服務器上了)

SSH Server,Name起一個名字,hostname填“目標服務器”IP,root登錄,Remote Directory是部署的目錄(/表示部署到根目錄下),不懂的最右邊有個問號可以點,有幫助。

?

5.3新建一個Job

?

填一個名字,下面選第一項”構建一個自由風格的軟件項目“,點確定。

源碼管理一欄,添git路徑(就是一般git clone XXX中的XXX)

?

Credentials點右邊Add,配置秘鑰訪問git

Kind選 SSH Username with private key

Username填root

Private Key選 From the Jenkins master ~/.ssh?(私鑰路徑/root/.ssh/id_rsa,公鑰剛才已經傳到git服務器上了)

Description隨便填,便于自己區(qū)分

?

填完之后回到之前的頁面,選擇使用這個憑證:root(sshKeyToGit)

?

構建后操作,選剛才添加的SSH Server

Source files填**,表示所有文件

Remote directory填first-ci,剛才配了部署目錄是/,綜合得到部署路徑?/first-ci

Exec command填的是文件傳輸完成后執(zhí)行的命令,這里執(zhí)行的是git庫中一個腳本

?

保存,進入這個界面,點“立即構建”,左下區(qū)域是構建情況(圖上是構建了4次,藍色表示成功,黃色表示出了點問題)

?

點“#4”,點“Console Output”,可以查看整個構建過程的輸出,

?

一般構建出錯也是在這里看錯在哪了,比如下面這圖#3

?

?

5.4驗證部署結果

在目標服務器上,

?

可以看到部署的文件(也是部署后執(zhí)行的腳本)

?

以及執(zhí)行腳本的結果(可見登錄后的目錄為用戶home目錄)

?

TODO:

Jenkins用戶管理....

?

轉載于:https://www.cnblogs.com/nidey/p/8387597.html

總結

以上是生活随笔為你收集整理的CentOS 7.2安装Jenkins自动构建Git项目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。