#开始 https://jenkins.io/ 到官网直接下载个最新版本的war包 服务器搭建tomcat,将jenkins.io 丢到tomcat 的发布目录: ###参考tomcat配置html
<Connector port="18080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" /> ... ... <Host name="localhost" appBase="/home/wwwroot/jenkins" unpackWARs="true" autoDeploy="true"> ... ...
###jenkins.war 放置目录java
[root@localhost jenkins]# pwd /home/wwwroot/jenkins [root@localhost jenkins]# ls jenkins jenkins.war
#启动tomcat 访问 http://[ip]:18080/jenkins/ #安装必要的插件 系统管理->管理插件->可选插件 Filter:输入maven 安装:Maven Integration plugin git
Filter:输入publish 安装:Publish Over SSHgithub
Filter:输入email 安装:Email Extension Pluginweb
#系统配置: ###Jenkins Location->系统管理员邮件地址 填入管理员邮箱; shell
###Extended E-mail Notification配置我这里以QQ邮箱为例: tomcat
注意:邮箱记得打开smtp 服务 jdk1.8下有可能报错:服务器
javax.mail.MessagingException: Could not connect to SMTP host: smtp.***.com, port: 465; ... ...
####第一种解决方法: 导入证书oracle
$JAVA_HOME/bin/keytool -import -alias mail.****.com -file mail.****.com.cer -keystore $JAVA_HOME/jre/lib/security/cacerts
测试连接app
java SSLPoke smtp.*****.com 465
####第二种解决方法 下载 jce-7
%JAVA_HOME%/jre/lib/security
替换jdk1.8下的两个包 Publish over SSH 最后test configuration 连接成功就ok
#Global Tool Configuration配置 系统管理->Global Tool Configuration ####Maven Configuration 我这里直接配置服务器安装好的setting.xml ####配置服务器已安装jdk
####maven 目录
#新建一个构建发布任务
选择ok 进入配置:
这里有个远程服务器执行的shell,放在远程服务器上,须要加上 BUILD_ID=DONTKILLME 防止中止构建以后中断执行shell。shell主要是完成 复制上传的war包到tomcat下的目录,而后重启tomcat,下面我给出简单示例:
#!/bin/sh projname=项目名字 deployPath=/home/webroot/default tomcatUnzipPath=/home/webroot/[tomcat解压路径]/ uploadPath=/[war 上传路径]/${projname}.war restartShell="[tomcat 重启脚本]" if [ -f "${uploadPath}" ]; then rm -f ${deployPath}/${projname}.war cp ${uploadPath} ${deployPath}/${projname}.war rm -rf ${tomcatUnzipPath} #重启jetty echo ${restartShell} ${restartShell} else echo "war 包不存在" exit 1 fi echo "success" exit 0