0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Jenkins远程执行shell命令

汽车玩家 来源:今日头条 作者:Java高级架构师 2020-05-05 20:13 次阅读

演示:a、47.22.33.102启动ssh,配置47.22.33.159公私,支持47.22.33.159通过ssh访问47.22.33.102b、通过jenkins远程执行shell脚本,打印hello字符串。

基于Jenkins远程执行shell命令

1、Jenkins插件Publish over SSH安装

打开Jenkins的“系统管理>插件管理”,选择“可选插件”,在输入框中输入“Publish over SSH”进行搜索,如果搜索不到可以在“已安装”里确认是否已经安装过。在搜索结果中选中“Publish over SSH”,点击页面的“直接安装”按钮,系统会自动安装,此插件安装后不需要重启Jenkins。如果插件安装成功在“系统管理>系统设置”会出现相关配置项。

基于Jenkins远程执行shell命令

2、插件配置

插件安装成功后使用前需要在“系统管理>系统设置”中进行配置,处如图:

基于Jenkins远程执行shell命令

Passphrase:SSH的密码使用用户名/密码登录时为用户名的密码,使用私钥登录时为私钥的密码。

Path to key:SSH私钥的文件路径私钥文件的路径,可以是绝对路径,也可以是相对$JENKINS_HOME的相对路径

Key:私钥私钥导出后的文本内容

如果“Key”和“Path to key”都设置,则“Key”的优先级较高,私钥的密码是“Passphrase”中设置的内容。

注意:私钥指的是47.22.33.159的私钥,安装Jenkins的服务器。

Disable exec:禁止在目标机上执行命令勾选后将会忽略在Job配置中“Exec command”选项中设置的命令。Jenkins的说明文档中的“The Disable exec in the advanced settings for individual configurations will be ignored.”没有完全理解,从实际效果来看,只要“Disable exec”被勾选后,不管SSH Server中是否勾选“Disable exec”,Job中设置的命令都将补忽略。

Test Configuration:测试配置是否成功,界面出现"Success"表示配置成功

SSH Server 配置

NameSSH节点配置的名称,在Job中使用Publish over SSH插件时,此名称将出现在“SSH Server”中“Name”的下拉列表中,如下图:

基于Jenkins远程执行shell命令

Hostname

通过SSH连接到的机器的主机名或IP

UsernameSSH

服务使用的用户名,使用key进行连接时为key指定的用户名

Remote Derictory

运程机器上真实存在的目录,并且“Username”指定的用户要有访问此目录的权限,插件将把文件传送到此目录下。

3、在Jenkins中配置构建

点击”构建“选项,在“增加构建步骤”里选择“Send files or execute commands over SSH”,即可以Job中使用Publish over SSH插件,配置如下图:

基于Jenkins远程执行shell命令

参数说明

Name

“系统管理>系统设置”设置的SSH Sverver的名字列表。

Source files允许为空,复制到运程机上的文件,相对workspace的路径,也支持表达式,如上图中的“**/*.war”。

Remove prefix

允许为空,文件复制时要过滤的目录,如上图中的target目录。

Remote directory

允许为空,文件得到到远程机上的目录,此目录是相对于“SSH Server”中的“Remote directory”的,如果不存在将会自动创建。

Exec command

在这里可以填写在运程机器上执行的脚本,如:触发aa.sh脚本打印hello。

4、查询效果点击"立即构建",查看日志如图:

基于Jenkins远程执行shell命令

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 字符串
    +关注

    关注

    1

    文章

    567

    浏览量

    20456
  • Shell
    +关注

    关注

    1

    文章

    362

    浏览量

    23250
收藏 人收藏

    评论

    相关推荐

    shell脚本执行的三种方式及区别

    在Linux系统中,Shell脚本是一种非常实用的工具,用于自动化执行一系列命令Shell脚本可以大大提高工作效率,简化复杂的任务。在这篇文章中,我们将介绍
    的头像 发表于 08-30 15:24 579次阅读

    执行shell脚本的方式包括什么

    执行Shell脚本的方式有很多种,以下是一些常见的方法: 直接运行脚本文件 在命令行中,可以直接使用脚本文件的路径来运行脚本。例如: ./script. sh 这种方式需要确保脚本文件具有可
    的头像 发表于 08-30 15:17 236次阅读

    shell具有的功能和特点

    Shell 是一个命令行解释器,用于与操作系统进行交互。它提供了一种方便的方式来执行命令、管理文件和目录、运行程序等。以下是 Shell 的功能和特点的介绍:
    的头像 发表于 08-30 14:48 291次阅读

    shell基本介绍及常用命令shell介绍

    一、Shell是什么?我们在刚开始接触Linux的时候,经常会听到工程师提到Shell这个词,刚开始不知道这是个干什么的,简单的说,它是一个应用,接收用户命令,调用相应的内核接口函数或应用程序,并
    发表于 08-15 09:28

    Shell基本介绍及目录常用命令

    01、Shell是什么?我们在刚开始接触Linux的时候,经常会听到工程师提到Shell这个词,那么Shell到底是什么呢?简单的说,它是一个应用,接收用户命令,调用相应的内核接口函数
    的头像 发表于 11-15 13:06 447次阅读
    <b class='flag-5'>Shell</b>基本介绍及目录常用<b class='flag-5'>命令</b>

    linux中source命令的用法

    在Linux中,source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。source命令可以用于读取并执行脚本文件中的
    的头像 发表于 11-08 14:35 2152次阅读

    linux命令行与shell编程实战

    Linux命令行与Shell编程实战主要涉及以下内容: Linux命令行基础:学习Linux命令行的基本操作,如文件管理、进程管理、网络配置等。熟悉使用
    的头像 发表于 11-08 10:57 698次阅读

    linux命令shell编程有什么联系

    Linux命令Shell编程之间存在密切的联系。 首先,Shell是Linux命令行下的解释器,它提供了一个用户界面,使用户能够与Linux内核进行交互。
    的头像 发表于 11-08 10:53 857次阅读

    shell命令和linux命令一样吗

    Shell命令和Linux命令并不完全一样。 首先,Shell是一种命令行解释器,它是用来解释和执行
    的头像 发表于 11-08 10:51 2651次阅读

    shell命令提示符的具体含义

    的主机名是localhost.localdomain。 当前目录:显示当前用户所在的目录,例如~代表用户的主目录(home目录)。 命令提示符:$符号表示普通用户,#符号表示root用户。 命令提示符的作用是提示用户可以输入命令
    的头像 发表于 11-08 10:37 1326次阅读

    shell调用java并返回执行结果

    执行结果:在Shell脚本中,使用 java 命令执行Java程序,并通过重定向操作符将输出结果保存到一个变量中。例如: result=$(java My
    的头像 发表于 11-08 10:32 1436次阅读

    shell并行执行java脚本

    Shell是一种用于解释执行命令的脚本语言,而Java是一种跨平台的面向对象编程语言。在某些情况下,我们可能需要在Shell脚本中执行Java程序。本文将介绍如何在
    的头像 发表于 11-08 10:29 630次阅读

    shell脚本串行和并行执行设置

    Shell脚本中,你可以使用不同的技巧来实现串行和并行执行。 串行执行 要实现串行执行,你可以简单地按顺序编写脚本中的命令。每个
    的头像 发表于 11-08 10:25 2277次阅读

    shell脚本基本命令

    Shell脚本是一种可执行文件,它包含了一组用某种特定语言编写的命令,这些命令可以被解释器(如bash)执行。以下是一些常见的
    的头像 发表于 11-08 10:08 1942次阅读

    Jenkins+Docker一键自动化部署SpringBoot应用最精简流程

    简述实现步骤:在docker安装jenkins,配置jenkins基本信息,利用Dockerfile和shell脚本实现项目自动拉取打包并运行。
    的头像 发表于 11-06 16:27 2157次阅读
    <b class='flag-5'>Jenkins</b>+Docker一键自动化部署SpringBoot应用最精简流程