Mac OS 搭建 Jenkins 實踐(Tomcat + jenkins.war)
阿新 • • 發佈:2019-02-08
在探索過程中有一次失敗的經歷,直接在網上下載的 jenkins.pkg 的安裝包,傻瓜式一鍵安裝,安裝很簡單,但是在後續使用中遇到了 命令ipa (shenzhen) 打包的過程中 login.keychain 解鎖的問題(該問題就是 jenkins.pkg安裝到了 共享目錄裡面,並且自動建立了一個 jenkins的使用者,該使用者的login.keychain中沒有證書),該問題最終沒有繼續解決,轉而嘗試了 Tomcat + jenkins.war ,這種方式 沒油遇到問題,所以推薦大家使用如下方案 tomcat + jenkins.war
方案更新: 最近經過重新實踐發現, 原來的舊方案中有些步驟是不需要,也就是說舊方案過時了;1、下載 tomcat
2、下載 war包
下載地址:
http://mirrors.jenkins-ci.org/war-stable/latest/jenkins.war
3、放置 jenkins.war 包
直接放到 tomcat/webapps/目錄下即可4、注意安裝 JRE ,這個需要注意版本,如果版本不符合要求,會無法訪問 jenkins
由於版本問題導致的無法訪問會在 tomcat/logs目錄下生成 log 檔案, localhost.日期.log ,內部有如下的錯誤提示,如果你也遇到這個問題,升級 JRE 就好,注意 升級JRE 需要重啟電腦。嚴重: Error configuring application listener of class jenkins.util.SystemProperties java.lang.UnsupportedClassVersionError: jenkins/util/SystemProperties : Unsupported major.minor version 51.0 (unable to load class jenkins.util.SystemProperties) at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:3200) at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:1373) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1861) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:504) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:486) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:113) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5034) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5634) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1092) at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1984) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:695) 2016-10-10 16:46:52 org.apache.catalina.core.StandardContext listenerStart
5、在瀏覽器訪問jenkins
localhost:8080/jenkins
舊的方案
1、安裝 Tomcat 其實就是 把壓縮包下載下來 解壓,無需安裝
我下載的 9 zip包 下載地址:
http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.0.M4/bin/apache-tomcat-9.0.0.M4.zip
下載完解壓到特定目錄,解壓完 先啟動起來,不然的話 是沒有 步驟三種說的那個 conf/Catalina/localhost/ 目錄的。
啟動的時候直接 執行 bin 下面的 startup.sh (請先給所有 bin/ 下的的 sh 檔案新增 可執行許可權 )。
2、下載 jenkins.war 包
下載地址:
http://mirrors.jenkins-ci.org/war-stable/latest/jenkins.war
3、放置 jenkins.war 包
在系統管理者的家目錄(例如/Users/admin)下建立一個目錄叫hudson, 將jenkins.war放到這個目錄, 例如/Users/admin/hudson/jenkins.war
到$TOMCAT_INSTALL_DIR$/conf/Catalina/localhost/目錄下新增一個檔案名為hudson.xml, 檔案內容如下
<?xml version='1.0' encoding='utf-8'?>
<Context path="/hudson" docBase="/Users/admin/hudson/jenkins.war" debug="0">
</Context>
4、launchd_wrapper.sh 修改
下載下來的 tomcat 解壓後 bin/ 裡面是沒有 launchd_wrapper.sh 這個檔案的 ,我 自己建立了一個 launchd_wrapper.sh
裡面內容如下
export CATALINA_OPTS="-DHUDSON_HOME=/Users/admin/hudson -Xmx512m"
5、重新啟動Tomcat Server
使用browser連到http://youripaddress:8080/hudson/, 看到以下畫面, 表示Hudson安裝成功