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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 环境下搭建 Jenkins(Hudson)平台

發布時間:2023/11/30 linux 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 环境下搭建 Jenkins(Hudson)平台 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
安裝jenkins:
安裝 jenkins 有兩種方式:
安裝方式一:?
[java] view plain copy
  • sudo?java?-jar?jenkins.war?–httpPort=18080?–ajp13Port=18009??
  • 但是很多時候我們是使用SSH方式到目標機器上的,放我們關閉SSH連接時,這個命令也會被中斷,jenkins服務會被終止,我們不可能一直保持這SSH連接,怎么辦?可以把這行命令寫成 shell 腳本,然后使用 nohup sh jenkins.sh &
    命令啟動這個腳本,這樣jenkins就能正常提供服務了。
    安裝方式二:安裝 RPM包
    為了能夠使用jenkins庫,首先需要導入jenkins庫的 key:
    [java] view plain copy
  • sudo?wget?-O?/etc/yum.repos.d/jenkins.repo?http://pkg.jenkins-ci.org/redhat/jenkins.repo?sudo?rpm?–import?http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key??
  • 安裝軟件(以jenkins-x.x.x.rpm為例):yum install jenkins-x.x.x.rpm
    ? ?刪除軟件:yum remove jenkins-x.x.x.rpm或者yum erase jenkins-x.x.x.rpm
    ? ?升級軟件:yum upgrade jenkins或者yum update jenkins
    ? ?查詢信息:yum info jenkins
    開啟服務(關閉,重啟): ? [java] view plain copy
  • sudo?service?jenkins?start|stop|restart??
  • 檢查jenkins是否安裝完成: localhost:8080 (默認是8080 端口,如果采用安裝方式一,那么就需要指定的端口)
    運行job時遇到的問題:
    ?mvn:command not found
    遇到的問題: 不能使用MVN命令;
    排查過程:
    ①Jenkins 默認創建進程,啟動任務的用戶名是 jenkins,使用root權限查看passwd,可以看到這個用戶默認情況下 ssh 為false,也就是說這個用戶默認情況下是不能使用ssh進行登錄的,除非修改 passwd中相應字段為 bash,然后sourse;
    jenkins:x:500:500:mengqc:/home/jenkins:/bin/fasle
    passwd文件的格式: ?注冊名:口令:用戶標識號:組標識號:用戶名:用戶主目錄:命令解釋程序
    ②默認情況下 Jenkins 的安裝目錄是 /var/lib/jenkins/ ,項目根目錄是 /var/lib/jenkins/jobs/workspace

    從目錄上看,就知道這個是需要 root 權限才能執行一些命令,但是我們通過界面 執行一些命令使用的是admin用戶,縱使我們在 根目錄下 能適應mvn命令,但是問題也不能解決。

    還有一個簡單的測試Maven 是否加入到了環境變量中的方法,在執行mvn命令時,填寫maven安裝的絕對路徑,如果能夠執行,說明不是權限的問題,而是環境變量的問題。


    解決方案一:
    ①安裝 ssh slave 插件;
    ②啟動slave 服務;
    ③jenkins-系統管理-節點管理:重新設置 slave機器的 Remote FS root 為 /home/admin/xxx
    (主要是添加了workspace的目錄) $ITEM_ROOTDIR
    ④把master的節點數設為0,這樣默認情況下就會使用 slave節點。
    問題:
    如果修改 工作目錄(Remote FS root),可能會遇到:
    [java] view plain copy
  • “main”java.lang.NoclassDefFoundError:hudson/maven/agent/Main??
  • 原因:我們修改了slave的工作目錄,但是slave服務沒有重啟導致;
    解決方法:使用我們的腳本 對slave進行 重啟操作。
    解決方案二:
    在 /home/admin/目錄下新建一個工作目錄,然后將 /var/lib/jenkins目錄設置成一個跳轉鏈接 ,鏈接到admin目錄下 [sudo ln -s /home/admin/xxx/ ?/var/lib/jenkins] ,然后將/var/lib/jenkins 目錄下的文件 mv 到/home/admin/xxx/ 目錄下。
    mvn和一些基本的命令是可以運行了,但是運行shell腳本時還是沒有權限,因為 新建的這個跳轉連接user=root ,group=root,并且對這個鏈接 使用chown/chgrp 都是沒有效果的,執行一些操作命令是還是沒有權限;
    解決方案三:修改默認 jenkins 用戶為 admin
    ①安裝jenkins?
    Java代碼 ?(我們一般使用的是admin權限)
    [java] view plain copy
  • sudo?wget?-O?/etc/yum.repos.d/jenkins.repo?http://pkg.jenkins-ci.org/redhat/jenkins.repo????
  • sudo?rpm?--import?http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key????
  • sudo?yum?install?jenkins????
  • rpm?-ql?jenkins????


  • ②. 配置jenkins?
    Java代碼 ?
    // edit JENKINS_PORT, JENKINS_USER ?
    sudo vi /etc/sysconfig/jenkins ?(把 JENKINS_USER 設置為 admin)
    ③. 修改jenkins權限(如果修改JENKINS_USER情況下)?
    Java代碼 ?
    [java] view plain copy
  • ####??
  • sudo?chown?-R?admin?/usr/lib/jenkins????
  • sudo?chgrp?-R?admin?/usr/lib/jenkins???
  • ####??
  • sudo?chown?-R?admin?/var/log/jenkins???
  • sudo?chgrp?-R?admin?/var/log/jenkins????
  • sudo?chown?-R?admin?/var/lib/jenkins????
  • sudo?chgrp?-R?admin?/var/lib/jenkins????
  • sudo?chown?-R?admin?/var/cache/jenkins???
  • sudo?chgrp?-R?admin?/var/cache/jenkins?(這個如果不改,會出現404)??

  • ④. 啟動jenkins?
    Java代碼 ?
    sudo /sbin/service jenkins start?
    或者 ?sudo service jenkins start 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的Linux 环境下搭建 Jenkins(Hudson)平台的全部內容,希望文章能夠幫你解決所遇到的問題。

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