Jenkins配置與運行流程

Jenkins配置與運行流程實現自動化構建

html

1、

我的的環境及工具: Jenkins 2.190.3 war包 、tomcat9.x、maven3.60、JDK 13.0.一、git2.22.1java

  1. 下載解壓 tomcat 到 /opt/tomcat/
  2. 下載解壓 maven 到 /opt/maven/
  3. 下載解壓 JDK 到 /usr/java/
  4. 下載解壓 git 到 /usr/src/
  5. 把 Jenkins.war 放到tomcat的解壓目錄 webapps/webapps/Jenkins.war

2、

由於 tomcat 默認狀況下,管理器manager只能從運行在同一臺機器上的瀏覽器。
這時候須要修改tomcat的一些配置,這樣咱們纔能有權限遠程訪問tomcat的 manager app 等頁面git

tomcat403.png

1.配置文件位置: /opt/tomcat/conf/tomcat-users.xml
<!-- 末尾添加-->
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx" />
<role rolename="manager-status"/>
<user username="tomcat" password="123456"  roles="manager-gui,manager-script,manager-jmx,manager-status" />
2.兩個配置文件位置:
/opt/tomcat/webapps/manager/META-INF/context.xml
/opt/tomcat/webapps/host-manager/META-INF/context.xml
添加 |\d+\.\d+\.\d+\.\d+
<!-- 法一:直接註釋,對我來講無效 -->
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->

<!-- 法二:把ip改成全部"^.*$" , 對我來講無效 -->
<!--
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="^.*$" />
 -->

<!-- 法三: 在末尾加上 |\d+\.\d+\.\d+\.\d+ -->
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />
3.打開tomcat解壓目錄tomcat/conf/server.xml修改URL地址的編碼解碼字符集
添加 URIEncoding="UTF-8"
JavaWeb 的時候get請求帶中文的請求參數不至於亂碼
<Connector port="8080" protocol="HTTP/1.1"
    connectionTimeout= "20000"
    redirectPort="8443" URIEncoding="UTF-8"/>


安裝git

第一步:安裝編譯git時須要的包github

yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install -y gcc perl-ExtUtils-MakeMaker

第二步:刪除已有的gitweb

yum remove git

第三步: Git 官網下載Git最新版tar包,移動到/usr/src目錄下shell

cd /usr/src
tar -zxvf git-2.9.3.tar.gz

第四步:編譯安裝apache

cd git-2.9.3
make prefix=/usr/local/git all
make prefix=/usr/local/git install
echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
source /etc/bashrc

第五步:檢查一下版本號瀏覽器

git --version


3、

啓動tomcat bin/startup.sh
訪問 ip:8080/jenkins 運行 jenkins 初始化
解鎖jenkins.jpgtomcat

能夠根據提示 cat 查看密碼安全

這裏須要連代理安裝插件[選擇推薦的], 也能夠離線安裝
zidingyianzhuang.jpg

chuangjian.jpg

注:
若是這裏不建立管理員用戶 之後退出登陸jenkins 使用的是 admin + 上面 cat 的密碼登陸
若是建立了 lankeren 管理員,那麼原來的admin就失效了,之後都是使用 lankeren 登陸 jenkins


4、

全局安全配置 容許用戶註冊,這樣到時候密碼忘了去註冊還能作些操做

全局工具配置
例MAVEN_HOME: opt/apache-maven-3.6.0
例JAVA_HOEM: /opt/jdk1.8.0_121

指定Maven配置位置

opt/apache-maven-3.6.0/conf/settings.xml

新增JDK的位置
別名: MyJDK
/opt/jdk1.8.0_121

新增 Maven
別名:MyMaven
opt/apache-maven-3.6.0

添加 git 位置
/usr/local/git/bin/git

安裝插件 deploy to container [也是要連代理],可能失敗,網絡不穩定,多試幾回

qqjj.jpg

mmaa.jpg

pzgit.jpg

建立一個 maven (web)工程,要求上傳github/gitee上的項目名目錄下要有pom.xml文件


5、

在 Jenkins 上建立一個新任務 [構建一個自由風格的軟件項目]

項目配置

1.源碼管理

None
Git √ 
Subverion

選擇Git
而後配置Git相關的內容

若是選擇 github 
1. 配置項目git
2. 同時要配置系統配置 添加 git server

若是選擇 gitee
1. 配置項目裏的 gitee
2. 同時要配置系統配置中的 gitee
github

項目中配置github 倉庫的URL 是當前項目的克隆與下載那裏的 HTTPS 連接
pp.jpg

github中獲取訪問token值,須要一個對項目有寫權限的帳戶

GitHub -> setting -> Developer setting->Personal access tokens->點擊Generate new token

內容以下:
git 和 jenkins 初步配置.PNG

建立成功後,token以下:
94.png

全局配置 添加一個 github server
gitserver.jpg

Jenkins中Github配置中添加token憑證
系統管理->添加Github server->添加Secret text憑證->鏈接測試這裏我鏈接測試的時候返回 ERROR 而後沒有管了,能夠正常自動構建

QQ.jpg

Secret text憑證添加以下:
類型需選擇Secret text,Secret處輸入Github中上面生成的token值
token.png

Hook URL默認: ip:port/jenkins/github-webhook 寫到 github項目setting的webhook中

settings->webhooks->Add webhook
jike.jpg


gitee
  • 插件安裝
  • 前往 Manage Jenkins -> Manage Plugins -> Available
  • 右側 Filter 輸入: Gitee
添加gitee碼雲連接配置 ( 系統配置
  1. 前往 Jenkins -> Manage Jenkins -> Configure System -> Gitee Configuration -> Gitee connections
  2. Connection name中輸入Gitee或者你想要的名字
  3. Gitee host URL中輸入碼雲完整 URL地址:https://gitee.com(碼雲私有化客戶輸入部署的域名)
  4. Credentials中如還未配置碼雲 APIV5 私人令牌,點擊Add- >Jenkins

    1. Domain選擇Global credentials
    2. Kind選擇Gitee API Token
    3. Scope選擇你須要的範圍
    4. Gitee API Token輸入你的碼雲私人令牌,獲取地址:https://gitee.com/profile/personal_access_tokens
    5. ID,Descripiton中輸入你想要的 ID 和描述便可。
  5. Credentials選擇配置好的 Gitee APIV5 Token
  6. 點擊Advanced,可配置是否忽略 SSL 錯誤(適您的Jenkins環境是否支持),並可設置連接測超時時間(適您的網絡環境而定)
  7. 點擊Test Connection測試連接是否成功,如失敗請檢查以上 3,5,6 步驟。

配置成功後如圖所示
aee.jpg

項目中git配置
  1. 按照上面的 github 配置,只須要改變倉庫連接gitee的倉庫HTTPS連接,帳戶改成 gitee 的帳戶

2.進入源碼管理配置中設置的碼雲項目中,進入 管理 -> WebHooks

  1. 添加 WebHook, URL 填寫觸發器配置:Build when a change is pushed to Gitee. Gitee webhook URL中所示 URL
  2. 密碼填寫:觸發器配置第 5 點中配置的 WebHook密碼,不設密碼能夠不填
  3. 勾選 PUSH, Pull Request

22.jpg
gitee配置.PNG


3.構建以及構建後的操做 ( 須要deploy插件,將在target生成的war包部署到tomcat的/webapps下
jiben.jpg

apple 爲項目的訪問路徑名字
例: 127.0.0.1:8080/apple/index.jsp

4.另外據說要關閉防止跨站點請求僞造 ,而後我關閉了,不知道不關閉會不會同樣能用

6、

在 IDEA 中

第一步,先建立本地倉庫

1.jpg

第二步,提交文件/項目

2.jpg

第三步,push到github / gitee

3.jpg

第四步,訪問 ip:port/xiangmumingcheng/test.html

ok

相關文章
相關標籤/搜索