Jenkins–SSH连接目标服务器

https://www.jianshu.com/p/707209fc1dae

1. SSH插件下载与配置

1.1 下载Publish over SSH插件
  • 系统管理---》管理插件
  • 下载后的本地路径:$JENKINS_HOME/plugins/publish_over
1.2 全局配置SSH服务器
  • 系统管理---》系统设置--》拉到底部Publish over SSH
  • Passphrase和Key二选一即可 。Passphrase是密码方式登录服务器,Key是免密码方式登录服务器(具体步骤:将Jenkins所在机子的public_key添加到待部署服务器的~/.ssh/authorized_keys即可)。
  • Remote Directory: 填写当前用户有权限操作的,并且必须是已经存在的路径(例如用户的主目录)。
  • SSH服务器默认端口号是22,点击高级即可设置Port。
  • 配置完成后,点击 Test Configuration 返回Success即证明Jenkins所在宿主机可以正常链接到待部署机。

配置待部署的服务器

  • 备注1: 添加多个部署机器时,默认是使用之前配置的Passphrase或Key,如果配置不一样,只需在高级中勾选Use password authentication, or use a different key,重新填写即可。
  • 备注2: 同时操作多台待部署服务器时,可以将Jenkins所在宿主机的public_key添加到所有待部署服务器上,这样jenkins配置中只需要填写一个Key就可以了而不必密码方式登录。

2. job配置

1. 构建环境中添加操作目标服务器
  • 勾选 Send files or execute commands over SSH before the build starts,即在构建开始之前,通过SSH登录目标服务器进行操作。
  • 勾选 Send files or execute commands over SSH after the build runs, 即在构建完成之后,通过SSH登录目标服务器进行操作。
2. 构建步骤中添加操作目标服务器
  • 构建步骤选择: Send files or execute commands over SSH
  • Remote directory:如果不存在则会基于配置的Remote Directory创建目录。
  • Exec command是基于当前用户的主目录,而不是Remote Directory请注意!!。

对目标服务器的操作

3. 构建结果

构建结果

    A+
发布日期:2019年01月11日  所属分类:未分类

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: