1、這些環境的基礎條件時jdk,所以首先下載的是jdk1.8.0.181(yum list installed | grep java 查找java目前的版本有哪些)
2、使用wget去下載對應的tomcat版本,下載完后解壓放入usl/local下並重命名為tomcat8
3、使用tomcat下載jenkins.war報放入tomcat下的webapp下
在tomcat8 bin目錄下執行./startup.sh 會提示成功,但是在本地無妨訪問,這時候需要進入到tomcat8 的logs目錄下執行tail -f catalina.out命令查看報錯,一般都是端口被占用,可以使用netstat -anp 查看8080端口被誰占用,也可以進入到tomcat9下面的conf/server.xml里修改端口號
默認密碼在ip:8081訪問的路徑是在tomcat8下面的webapp目錄下
在這個時候雖然成功進入到jenkins配置目錄,但是此時我輸入密碼點擊確定,卻出現了頁面白屏,在后續的刷新中一致會出現超時連接失敗,尋找了很久才知道是因為iptable的問題,在centos7這種,iptables已經不歸屬與service而是歸屬於systemctl執行,相關的配置網上有,可以執行systemctl enable iptables 讓每次開機自動啟動防火牆,相關的關閉則是 systemctl stop iptables.service
上面的主要原因是linux開啟了防火牆,有兩種解決方案,一種是關閉防火牆,另外一種是開放所要訪問的端口
1、關閉防火牆(非常不建議)
service iptables stop --停止
service iptables start --啟動
2、使用命令開放端口
首先查看一下本機防火牆現有的規則列表:
使用命令:iptables -L --line-number
以下顯示的是INPUT鏈的規則
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
由表格可以看出,linux只開放了端口22,因此我們需要把tomcat的端口(我這里是8080)加入進去,在這里需要注意規則的最后一條,也就是第5條,對於規則來講是鏈式的,最后一條意思是拒絕所有,那么對於所有在第5條之后追加的規則都是無效的,因此我們需要把規則插入到第5條之前,而不能在最后一條追加,具體插入命令如下:
iptables -I INPUT 5 -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
紅色部分為tomcat服務器端口
這條命令執行完成之后,主機就可以訪問tom
關於centos7防火牆的設置
操作系統環境:CentOS Linux release 7.0.1406(Core) 64位
CentOS 7.0默認使用的是firewall作為防火牆,這里改為iptables防火牆步驟。
1、關閉firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機啟動
firewall-cmd --state #查看默認防火牆狀態(關閉后顯示notrunning,開啟后顯示running)
2、iptables防火牆(這里iptables已經安裝,下面進行配置)
vi/etc/sysconfig/iptables #編輯防火牆配置文件
# sampleconfiguration for iptables service
# you can edit thismanually or use system-config-firewall
# please do not askus to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT[0:0]
:OUTPUT ACCEPT[0:0]
-A INPUT -m state--state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -jACCEPT
-A INPUT -i lo -jACCEPT
-A INPUT -p tcp -mstate --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -jACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080-j ACCEPT
-A INPUT -j REJECT--reject-with icmp-host-prohibited
-A FORWARD -jREJECT --reject-with icmp-host-prohibited
COMMIT
:wq! #保存退出
備注:這里使用80和8080端口為例。***部分一般添加到“-A INPUT -p tcp -m state --state NEW -m tcp--dport 22 -j ACCEPT”行的上面或者下面,切記不要添加到最后一行,否則防火牆重啟后不生效。
systemctlrestart iptables.service #最后重啟防火牆使配置生效
systemctlenable iptables.service #設置防火牆開機啟動
jenkins配置
jenkins默認賬號是admin 密碼在/root/.jenkins/secrets的initialAdminPassword文件里
登錄進去可以去系統管理/安全中心勾選進入主頁面可以注冊賬號
系統管理/安裝插件會發現可選插件無法點擊然后點擊高級里最下面的立即獲取按鈕發現出錯,此時這里面最底下有個【升級站點】,把其中的鏈接改成http的就好了,http://updates.jenkins.io/update-center.json。 然后在服務列表中關閉jenkins,再啟動,這樣就能正常聯網了。 ,然后重啟tomcat在進入該頁面點擊立即獲取,然后返回到安裝插件頁面點擊可選插件,此時就可以看到下面的插件了
jenkins插件推薦:
Ant Plugin、Build Timeout、Deploy to container Plugin、Email Extension Plugin、
GitHub API Plugin、Gradle Plugin、LDAP Plugin、Maven Release Plugin-in Plugin-in、
PAM Authentication plugin、Pipeline、Pipeline: GitHub Groovy Libraries、
Publish Over SSH、SSH Slaves plugin、Subversion Plug-in、Timestamper、
Workspace Cleanup Plugin
重點:在后續jenkins配置時配置java_home時一直出錯,糾結了一天,最后是朋友的建議不要使用open_jdk 建議使用oracle的,所以又去windows上下載完,在上傳到linux上,建議不要使用wger直接在linux下載,因為鏈接有問題,無法下載完,所以解壓的時候就會報錯
在linxu下載完加壓到/usr/java下面然后去配置 /etc/profile里配置環境
export JAVA_HOME=/usr/java/jdk1.8.0_181
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
然后保存后點擊source /etc/profile 報錯的同學可以使使用 locate source /etc/profile