- 邮箱配置(可选)
- 思路图
- 添加后端服务器
- 配置JDK和Maven
- 构建发布任务
- 后端服务器添加脚本
- 调用maven打包命令
- 启用邮箱
- 构建项目
②jenkins企业必会技能, 邮箱配置(可选)
安装邮件插件,才能确保邮件发送成功。否则可能不会发送邮件
邮箱名称
邮箱授权码
找不到 点击右边的高级
可以测试一下
可看到邮箱确实接收到了邮件,则配置成功;
当然邮箱能接收到邮件的前提是,邮箱要开启smtp服务
上面邮箱配置完拉 下面就是实战 配置自动打包压缩发送war包
先给自己配置一个私钥
[root@jenkins ~]# ssh-keygen [root@jenkins ~]# cat /root/.ssh/id_rsa
把安装jenkins的机器上面的私钥粘贴复制过来
想一下,你jienkins 给后面另一台虚拟机tomcat端发送包,需要进行免密,
公钥发送到后端服务器,才能实现免密; [root@jenkins ~]# ssh-copy-id -i root@192.168.153.194
接着配置jenkins
虽然Jenkins服务器上,已经安装了JDK和maven工具,但是,还需要在Jenkins服务中,进行配置;
这样Jenkins才能自动化的使用两个工具;
jdk安装包
取消自动安装,因为我们上面进行war包安装,自己安装的有jdk
我们只需要把文件路径写上就可以
查看并复制路径
maven 编译安装打包软件
如果有多个jdk和maven需要配置的话,可以点击新增jdk或者新增maven;
git@gitee.com:tianqingyuxi/ming.git
这里是我再gitiee上,找的一个测试的小项目。能进行编译打包
克隆信息填写上面,图片上面是其他项目名字
脚本存放的路径
如果有多个后端服务器,可以点击 ADD server进行添加;
第二台机器,上面要安装tomcat,以及环境 jdk
还有 检测脚本的
我这里把tomcat 安装到自定义的目录下来
jdk 我就正常解压 然后配置环境变量
[root@java-server ~]# mkdir -p /data/application 上传jdk [root@java-server ~]# tar xzf jdk-8u191-linux-x64.tar.gz -C /usr/local/ [root@java-server ~]# cd /usr/local/ [root@java-server local]# mv jdk1.8.0_191/ java
下载tomcat
[root@java-server ~]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.42/bin/apache-tomcat-8.5.42.tar.gz [root@java-server ~]# tar xzf apache-tomcat-8.5.42.tar.gz -C /data/application/ [root@java-server ~]# cd /data/application/ [root@java-server application]# mv apache-tomcat-8.5.42/ tomcat
设置环境变量
[root@java-server ~]# vim /etc/profile export JAVA_HOME=/usr/local/java export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar export TOMCAT_HOME=/data/application/tomcat [root@java-server ~]# source /etc/profile 测试: [root@java-server ~]# java -version
删除tomcat默认发布目录下面的内容:
[root@java-server ~]# rm -rf /data/application/tomcat/webapps/* [root@java-server ~]# cd /data/application/tomcat/webapps/ [root@java-server webapps]# ls
创建目录和脚本:
[root@java-server ~]# mkdir /opt/script #创建脚本目录 [root@java-server ~]# vim /opt/script/app-jenkins.sh #创建脚本 脚本内容在后面: [root@java-server ~]# chmod +x app-jenkins.sh #添加执行权限
脚本内容:# cat app-jenkins.sh
#!/usr/bin/bash
#本脚本适用于jenkins持续集成,实现备份war包到代码更新上线!使用时请注意全局变量。
#================
#Defining variables
export JAVA_HOME=/usr/local/java
webapp_path="/data/application/tomcat/webapps"
tomcat_run="/data/application/tomcat/bin"
updata_path="/data/update/`date +%F-%T`"
backup_path="/data/backup/`date +%F-%T`"
tomcat_pid=`ps -ef | grep tomcat | grep -v grep | awk '{print $2}'`
files_dir="easy-springmvc-maven"
files="easy-springmvc-maven.war"
job_path="/root/upload"
#Preparation environment
echo "Creating related directory"
mkdir -p $updata_path
mkdir -p $backup_path
echo "Move the uploaded war package to the update directory"
mv $job_path/$files $updata_path
echo "========================================================="
cd /opt
echo "Backing up java project"
if [ -f $webapp_path/$files ];then
tar czf $backup_path/`date +%F-%H`.tar.gz $webapp_path
if [ $? -ne 0 ];then
echo "打包失败,自动退出"
exit 1
else
echo "Checking if tomcat is started"
if [ -n "$tomcat_pid" ];then
kill -9 $tomcat_pid
if [ $? -ne 0 ];then
echo "tomcat关闭失败,将会自动退出"
exit 2
fi
fi
cd $webapp_path
rm -rf $files && rm -rf $files_dir
cp $updata_path/$files $webapp_path
cd /opt
$tomcat_run/startup.sh
sleep 5
echo "显示tomcat的pid"
echo "`ps -ef | grep tomcat | grep -v grep | awk '{print $2}'`"
echo "tomcat startup"
echo "请手动查看tomcat日志。脚本将会自动退出"
fi
else
echo "Checking if tomcat is started"
if [ -n "$tomcat_pid" ];then
kill -9 $tomcat_pid
if [ $? -ne 0 ];then
echo "tomcat关闭失败,将会自动退出"
exit 2
fi
fi
cp $updata_path/$files $webapp_path
$tomcat_run/startup.sh
sleep 5
echo "显示tomcat的pid"
echo "`ps -ef | grep tomcat | grep -v grep | awk '{print $2}'`"
echo "tomcat startup"
echo "请手动查看tomcat日志。脚本将会自动退出"
fi
调用maven打包命令
找这个位置
选择配置邮箱 可以接受消息
可以查看工具条
下面就是拉取成功并发布
测试查看 ,输入第二天机器的ip后面加上目录
http://196.196.196.55:8080/easy-springmvc-maven/



