jenkins部署jar包到远程服务器
1 安装Publish Over SSH插件
2 配置ssh以及jenkins的ssh配置
3 jenkins任务的配置
4 总结
一,安装Publish Over SSH插件,进入插件管理,搜索Publish Over SSH,点击直接安装,不成功就多试几次。
其他配置 如 git maven jdk 请仿照jenkins部署war包到远程tomcat
二,配置ssh以及jenkins的ssh配置
1,在jenkins所在服务器,生成公钥和私钥。命令如下:
ssh-keygen
1
2,生成之后把生成的公钥放在需要部署jar的服务器的.ssh/authorized_keys文件中。然后进入jenkins系统配置
3,把生成的私钥放在key那里,path to key写上私钥的路径。
3,写入要部署jar包的服务ip地址,以及要登陆的用户和密码。以及要传的远程路径。
三,jenkins任务的配置
1,git仓库的配置,需要把本地的公钥放在github上。
2,maven构建操作。由于pom文件,不在git项目一级路径下。所以必须进入pom所在文件目录才能构建。
------- 如果pom就在git拉下来的第一级目录下。直接 clean install 就行。
3,构建环境配置.ssh server选择ssh配置上的myssh。
source files 填入工作空间里面的jar的全路径
remote directory 不填,就是ssh配置的那个路径
exec command 就是文件传过去后,所执行的启动脚本。
4,启动脚本。主要就是杀掉以前的这个项目的进程,然后重启。
#!/bin/bash
cp /dev/null ./nohup.out
ID=`ps -ef | grep demo-0.0.1-SNAPSHOT.jar | awk '{print $2}'`
echo "------start---------"
for id in $ID
do
kill -9 $id
echo "killed $id"
done
nohup /home/liyouqing/app/jdk1.8.0_121/bin/java -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar ./demo-0.0.1-SNAPSHOT.jar &
sleep 1
echo "------end---------"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
4,总结
构建后成功访问