通过Jenkins在远程服务器上执行shell脚本
1、Jenkins安装Publish over SSH插件



下载安装Publish over SSH插件
2、配置服务器相关信息
要先在jenkins所在的机器上生成秘钥。生成方式为:
ssh-keygen -t rsa #产生公钥与私钥对
因为没加密码所以一路enter完成。此时在 用户名文件夹/root/.ssh/文件夹下生成两个文件:
is_rsa 为密钥文件
id_rsa.pub 为公钥文件
网上大部分文件都通过以下语句将公钥文件复制到目标服务器:
ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.51.xxx.xxx
直接复制粘贴也行
打开 系统管理——>系统设置,下拉到底部的Publish over SSH区域。

Passphrase:根据网上的资料说这里是生成秘钥时的密码,如果生成秘钥没有加密码,直接enter到底生成的,则这里不用填写。(保存后会有些·········表示空密码)。
Path to key:网上说这里填的是私钥的路径,没尝试,因为在下面填写了私钥key。
Key:私钥的值。要将前后的-----BEGIN RSA PRIVATE KEY-----和-----END RSA PRIVATE KEY-----带着。
点击SSH Servers的“增加”,新添目标服务器。
Name:你起的可以分辨服务器的名称。
Hostname:目标服务器的ip,一般服务器之间交互的话用内网ip就行。
Username:登录目标服务器的账号。
Remote Directory:将jenkins构建的文件发送到目标服务器的哪个文件夹下。

在Passphrase中添加服务器用户登录密码即可(这里没有使用Jenkins的ssh)

配置完成后点击测试连接
3、在服务器上创建一个文件夹
创建一个 构建一个自由风格的软件项目

配置构建环境--选择ssh server

添加Exec Command---保存即可
点击构建:


通过Jenkins在远程服务器上执行shell脚本的更多相关文章
- 在远程服务器上执行本地的shell脚本
在远程服务器上执行本地的shell脚本 [root@localhost zzx]# sh echoip.sh 192.168.67.131[root@localhost zzx]# ssh root@ ...
- 在 Jenkins Windows Agent 节点上执行 Shell 命令
Jenkins 在 Windows agent 上执行shell 命令,听起来很有意思,以下方法可以在 Jenkins 中执行一些简单的 shell 脚本,如果是复杂脚本就交给 Linux agent ...
- Java代码调用服务器上的Shell脚本
Java代码调用服务器上的Shell脚本 这里主要是因为我们报表平台有用到用户手工录入的数据作为结果数据且需要纳入saiku去展示 如我们所知,saiku不会自动刷新,所以需要在数据更新接口中调用服务 ...
- linux 执行远程linux上的shell脚本或者命令以及scp 上传文件到ftp--免密码登陆
场景:在linux A 上执行Linux B上的shell脚本和命令 步骤1.设置ssh免登陆 1.SSH无密码登录 # 本地服务器执行(A机器):生成密钥对 ssh-keygen -t dsa -P ...
- 在PHP中调用php_ssh实现远程登陆linux服务器并执行shell脚本。
这个功能主要用于在web端利用程序对远程服务器进行操作,通过PHP_ssh执行shell脚本来实现. 首先要安装php_ssh2组件,linux中centos7下有ssh2源,直接安装.window下 ...
- java远程执行linux服务器上的shell脚本
业务场景:需要从服务器A中新增的文件同步至本地服务器,服务器A中内存有限,需同步成功之后清除文件. Java调用远程shell脚本,需要和远程服务器建立ssh链接,再调用指定的shell脚本. 1.创 ...
- jenkins在windows服务器上执行含git push命令的脚本权限不足的解决方法
错误摘要 默认情况下执行脚本是没问题的,但是脚本中含有git push命令就无法执行了 用jenkins部署hexo博客时候遇到的,执行hexo d -g一直阻塞至Build was aborted, ...
- 通过Jenkins调用自动部署war包及jar包到服务器上的Shell脚本
1)部署war包#!/bin/bashif [ id>0];then echo"stopproject" kill −9 idelse echo "project ...
- [Jenkins]怎样在Jenkins上面启动服务器上的批处理脚本
New Item 在Build --> Execute Windows batch command --> 里面填写: schtasks /run /tn Start_Hub_szotqa ...
- Java SSH远程执行Shell脚本实现(转)
前言 此程序需要ganymed-ssh2-build210.jar包(下载地址:http://www.ganymed.ethz.ch/ssh2/) 为了调试方便,可以将\ganymed-ssh2-bu ...
随机推荐
- Educational Codeforces Round 137 (Rated for Div. 2) - F. Intersection and Union
(线段树 + 思维)or 动态dp [Problem - F - Codeforces](https://codeforces.com/contest/1743/problem/E) 题意 数轴上有 ...
- SOJ1737 题解
题意 给定一个长度为 \(n\) 的串 \(S\). 定义 \(occ(T)\) 表示串 \(T\) 在 \(S\) 中出现的次数. \(q\) 次询问,每次询问给定一个区间 \([l,r]\),查询 ...
- 生成brobuff
xxx_pb.js需要服务端打包好 再新建export.js文件 var IMBaseDefine= require('./xxx_pb'); module.exports = { DataProto ...
- 2.4 在DispatcherServlet的service方法中,通过ServletPath获取对应的Controller对象
@Override protected void service(HttpServletRequest request, HttpServletResponse response) throws Se ...
- SVN 之切换账号
简单来说两步就搞定了 第一步删除已缓存的数据 第二步输入要切换账号密码 具体步骤图解如下: 第一步: 点击TortoiseSVN 找到设置 点击已保存数据 点击清除全部 再点击确定 第二步: 点击s ...
- vim下的查找命令
linux下vim 查找命令: /text --查找text, 按n查找下一个, N查找上一个 ?text --查找text(反向查找), 按n查找下一个, N查找上一个 */# --查找光标当前的单 ...
- docker 创建 network 指定ip 段
docker network create -d bridge --gateway 172.22.0.1 --subnet 172.22.0.0/16 zk_default
- Mysql昨天,上个月条件查询
1.查询昨日数据 SELECT * FROM test WHERE DATEDIFF(DATE_FORMAT(NOW(),'%Y%m%d'),DATE_FORMAT(created_time,'%Y% ...
- 解决Mac安装Homebrew失败
首先使用Homebrew官网的安装shell命令安装: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebr ...
- 一篇教会你写90%的shell脚本
原文链接 : https://zhuanlan.zhihu.com/p/264346586 shell是外壳的意思,就是操作系统的外壳.我们可以通过shell命令来操作和控制操作系统,比如Linux ...