jenkins安装Publish Over SSH插件发布项目

硅谷探秘者 Md jenkins 2131 0 0

之前写了使用jenkins简单自动打包和发布项目,参考:
http://www.jiajiajia.club/blog/artical/an37r4cyp28l/504
  但是那是在和jenkins同一台服务器上打包和部署的,本文介绍使用Publish Over SSH插件,将项目发布到远程服务器。

  本次模拟使用三台服务器,分别是jenkins服务器A:192.168.127.128,专门用于下载代码,打包项目,以及远程发布。第二和第三台都是运行程序的服务器,分别是B:192.168.127.129C:192.168.127.130。在A服务器上打包的项目要上传到B、C服务器上运行。

  在测试之前还需要配置服务器的ssh免密钥登录,也就是A服务器登录B服务器和C服务器要免密登录。因为A服务器需要将打包的程序上传到B、C服务器,并执行相应的脚本,从而启动程序。

  关于ssh免密登录,请参考文章:linux系统配置SSH免密钥登录

一、Publish Over SSH插件安装

在插件管理中选择”可选插件”,搜索ssh,选中 Publish Over SSH ,点击下面的install。

等待安装成功

二、配置远程服务器信息

在jenkins系统配置中配置服务器信息
mamger jenkins -> System Configur

Publish over SSH的配置栏中输入jenkins服务器中的私钥地址和私钥内容。

点击下面的”新增“按钮,新增SSH Services
输入服务器的相关信息,点击 Test Configuration测试成功后点击保存并应用。

如果有多台服务器,则继续点击‘新增’按钮添加服务器信息。

三、任务配置

  配置完远程服务器的信息后,就可以配置任务信息了,关于配置git,以及maven在之前的文章中已经介绍了,本文不再描述,请参考: jenkins创建任务(item)自动打包,自动部部署
  在配置完git(源码管理)maven(构建)后,就可以配置构建后的操作了。
  在‘构建后的操作模块’点击‘新增构建后操作步骤’,选择‘Send build artifacts over SSH选项

填写配置信息

本文启动java程序的方式是用服务的方式启动的。

脚本的内容为:

source /etc/profile;
cd /usr/local/project;
./start.sh jenkinsTestProject-1.0-SNAPSHOT jenkinsTestProject

start.sh

#!/bin/bash
rm -rf ./$2.jar
cp $1.jar $2.jar

if [  -f "/etc/init.d/$2" ]; then
    rm -rf /etc/init.d/$2;
fi

ln -s $(pwd)/$2.jar /etc/init.d/$2;
chmod a+x /etc/init.d/$2;

echo "启动项目"
/etc/init.d/$2 restart

该脚本有两个参数,第一个参数是打包后jar包的文件名(不带.jar后缀),第二个参数是服务名。


评论区
请写下您的评论...
暂无评论...
猜你喜欢
软件使用 1175 环境:centos7、jdk-1.8、jenkins2.39-1.1jdk参考:http://www.jiajiajia.club/blog/artical/yjw520/21jenkins下载
official 1232 上一篇《(mq)rabbitmq延时队列实现延时消息1》文章中介绍了rabbitmq延时队列。本编将继续结合代码来实现延时队列(基于springboot)。下方所有源代码均已上传
linux系统 4803 linuxcentos7mysql57在之前先检查一下之前有没有过,如果之前过,先卸载完全再重新1.将mysql的包传送到/usr/local/下用#tar-zxvf命令解压文
redis 1010 操作系统linuxcentos7准备官网下载包:https://redis.io/download/将包上传到服务器,解压并进入文录[root@localhost~]#tar
rabbitmq,springboot 2276 amq.rabbitmq.log,所有的信息都到这里,如果用户没有经过授权,你可以拒绝它们访问。 每个事都有与之关联的各种属性,它们被转换成AMQP0-9-1数据编码并入到消息头中。消息的正文始终为空
工具 1698 命令yum-yinstallgit查看版本git--version配置远程ssh,执行:gitconfig--globaluser.name"yourname"gitconfig
linux系统 3351 linuxjdk1.官网下载jdk2.在linux系统中新建文夹:#mkdir/usr/java#cd/usr/java3.通过xftp服务器将下载好的jdk上传到linux4.解压该压缩包
linux 1499 一、erlang二、socat三、rabbitmq四、启动服务五、开启用户远程访问六、rabbitmq服务常用命令一、erlang文下载地址:https://github.com
归档
2018-11  12 2018-12  33 2019-01  28 2019-02  28 2019-03  32 2019-04  27 2019-05  33 2019-06  6 2019-07  12 2019-08  12 2019-09  21 2019-10  8 2019-11  15 2019-12  25 2020-01  9 2020-02  5 2020-03  16 2020-04  4 2020-06  1 2020-07  7 2020-08  13 2020-09  9 2020-10  5 2020-12  3 2021-01  1 2021-02  5 2021-03  7 2021-04  4 2021-05  4 2021-06  1 2021-07  7 2021-08  2 2021-09  8 2021-10  9 2021-11  16 2021-12  14 2022-01  7 2022-05  1 2022-08  3 2022-09  2 2022-10  2 2022-12  5 2023-01  3 2023-02  1 2023-03  4 2023-04  2 2023-06  3 2023-07  4 2023-08  1 2023-10  1 2024-02  1 2024-03  1 2024-04  1 2024-08  1
标签
算法基础 linux 前端 c++ 数据结构 框架 数据库 计算机基础 储备知识 java基础 ASM 其他 深入理解java虚拟机 nginx git 消息中间件 搜索 maven redis docker dubbo vue 导入导出 软件使用 idea插件 协议 无聊的知识 jenkins springboot mqtt协议 keepalived minio mysql ensp 网络基础 xxl-job rabbitmq haproxy srs 音视频 webrtc javascript 加密算法
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。