jenkins
- 最低配置:不少于256M內(nèi)存,不低于1G磁盤,JDK版本>=8
- 安裝JDK
rpm -ivh jdk-8u151-linux-x64.rpm
- 配置環(huán)境變量
vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH
source /etc/profile.d/java.sh
- 添加jenkins用戶(非必需)
useradd jenkins
- 安裝jenkins
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
yum -y install jenkins
- 啟動jenkins,查看初始密碼
/etc/init.d/jenkins start
cat /var/lib/jenkins/secrets/initialAdminPassword
- 訪問web(做的Host解析)
http://jenkins.wangyao.org:8080
- jenkins服務(wù)器端目錄
jenkins配置文件:/etc/sysconfig/jenkins
jenkins主目錄:/var/lib/jenkins/
web端配置
-
解鎖jenkins
解鎖jenkins.png -
安裝自定義插件
安裝自定義插件.png -
創(chuàng)建管理賬戶
創(chuàng)建管理員.png
使用jenkins發(fā)布PHP代碼
- 安裝插件
"系統(tǒng)管理"-->"管理插件"-->"已安裝";檢查是否有"Git plugin"和"Publish Over ssh",
如果沒有,則需要點(diǎn)擊"可選插件",找到并安裝,之后重啟jenkins
- 配置jenkins用戶的私鑰(避免使用root賬戶)
點(diǎn)擊"系統(tǒng)管理"-->"系統(tǒng)設(shè)置"-->"Publish Over SSH"-->"Path to key(私鑰的路徑)"或者"Key(私鑰的內(nèi)容)";
把jenkins用戶的公鑰傳到需要部署服務(wù)器的賬戶下建議jenkins用戶并賦予相應(yīng)的權(quán)限;
點(diǎn)擊"增加",SSH Server,"Name(遠(yuǎn)端服務(wù)器的標(biāo)識)"-->"Hostname(域名/IP)"-->"Username(用于連接的用戶最好不用root,建議在部署服務(wù)器也創(chuàng)建一個(gè)jenkins用戶并且給相應(yīng)的權(quán)限專門用于部署應(yīng)用)"-->"Remote Directory(必須填寫/)"
如果多臺需要部署的服務(wù)器,繼續(xù)點(diǎn)擊"增加",重復(fù)以上操作;
點(diǎn)擊"保存";
- 創(chuàng)建任務(wù),部署PHP代碼
"新建任務(wù)"-->"Test_php(任務(wù)名稱,自定義)"-->"構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目"-->"確定";
jenkins必須可以從代碼倉庫獲取到代碼;
"源碼管理"-->"Git"-->"Repository URL(公共的倉庫地址)"-->"Credentials"-->"Add(添加私鑰)"-->"Kind"-->"SSH Username with private key"-->"Username(git)"-->"Private Key"-->"Enter directly(jenkins用戶的私鑰)"-->"Add(完成之后)"-->"Credentials(選擇git用戶,應(yīng)該就不會報(bào)錯(cuò)了)"-->"Branches to build(選擇代碼倉庫的分支)";
"構(gòu)建"-->"Send files or execute commands over ssh"-->"Transfers"-->"Source files(代碼類型)"-->"**/**"-->"Remote directory(部署路徑)"-->" Exec command(部署完成后需要執(zhí)行的命令)"-->"保存";
"立即構(gòu)建"(jenkins用戶必須有一定的權(quán)限)
- jenkins郵件設(shè)置
"系統(tǒng)管理"-->"系統(tǒng)設(shè)置"-->"Jenkins Location"-->"系統(tǒng)管理員郵箱地址(發(fā)郵件的郵件地址需要和這個(gè)一致)";
"郵件通知"-->"SMTP服務(wù)器"-->"高級"-->"使用smtp認(rèn)證"-->"用戶名和密碼"-->"smtp端口為25"-->"通過發(fā)送測試郵件測試配置"-->"保存";
到已經(jīng)構(gòu)建過的job里去配置接受郵件地址,"構(gòu)建后操作"-->"E-mail Notification"-->"Recipients(收件人)";
- jenkins郵件-插件email-ext
插件名字Email Extension Plugin,默認(rèn)已經(jīng)安裝
"系統(tǒng)管理"-->"系統(tǒng)設(shè)置"-->"Extended E-mail Notification"
"SMTP Server"-->"高級"-->"Use SMTP Authentication"-->"用戶名/密碼/端口"-->"保存";
"構(gòu)建任務(wù)中配置"-->"構(gòu)建后操作"-->"增加構(gòu)建后操作步驟"-->"Editable Email Notification"-->"Project Recipient list(收件人,可以在默認(rèn)內(nèi)容后面增加額外的收件人郵箱,用英文逗號分隔)"-->"Advanced settings"-->"Triggers(增加發(fā)郵件的條件)"-->"保存";
- 部署JAVA代碼
java的項(xiàng)目是需要編譯和打包的;
編譯和打包用maven完成,所以需要安裝maven插件
下載地址 https://maven.apache.org/download.cgi
wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
tar xf apache-maven-3.5.2-bin.tar.gz
mv apache-maven-3.5.2 /usr/local/
ln -s /usr/local/apache-maven-3.5.2/ /usr/local/maven
/usr/local/maven/bin/mvn --version
jenkins配置-->"系統(tǒng)管理"-->"全局工具配置"-->"Maven Configuration"-->"Settings file in filesystem"-->"File Path(/usr/local/maven/conf/settings.xml)";
"Global settings file on filesysteng"-->"File Path(同上)";
"Maven"-->"新增maven(取消自動安裝)"-->"Name(自定義)"-->"MAVEN_HOME(/usr/local/maven)"-->"保存";
"系統(tǒng)管理"-->"管理插件",檢查是否已經(jīng)安裝Maven integration plugin和Deploy to container Plugin,若沒有安裝則需要安裝這兩個(gè)插件(安裝完成后重啟jenkins服務(wù));
- 新建java項(xiàng)目
"新建任務(wù)"-->"任務(wù)名稱自定義(Test-java)"-->"構(gòu)建一個(gè)maven項(xiàng)目"-->"確定";
"源碼管理(參考部署PHP代碼的操作)";
"Build"-->"Root POM(pom.xml)"-->"Goals and options(clean install -D maven.test.skip=true)";
Tomcat服務(wù)器配置:
vim /usr/local/tomcat/conf/tomcat-users.xml
<role rolename="admin" />
<role rolename="admin-gui" />
<role rolename="admin-script" />
<role rolename="manager" />
<role rolename="manager-gui" />
<role rolename="manager-script" />
<role rolename="manager-jmx" />
<role rolename="manager-status" />
<user name="admin" password="admin123" roles="admin,manager,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" />
重啟tomcat
"構(gòu)建后操作"-->"增加構(gòu)建后操作步驟"-->"Deploy war/ear to a container"-->"WAR/EAR files(**/*.war)"-->"Contex path(留空)"-->"Containers"-->"Add container(Tomcat 8.x)"-->"Credentials"-->"Add"-->"Username(tomcat配置的管理賬戶admin)"-->"Password(admin123)"-->"Tomcat URL(tomcat服務(wù)器的地址)"-->"保存";


