远程原理
在我们之前的操作中, 是直接将指令写在 jenkins 里面的 . 因为是做实验. 所以指令比较简单.
如果是正式环境的话, 可能指令就比较多了. 我们可以将他写成脚本.
我们可以再 jenkins 的 机器上面. 弄一个 目录 专门放脚本. 然后调脚本就行了.
- [[email protected] home]# mkdir -p /home/scripts
- [[email protected] home]# VIM /home/scripts/deploy.sh
- [[email protected] home]# chmod a+x /home/scripts/deploy.sh
- [[email protected] home]# cat scripts/deploy.sh
- #!/bin/bash
- rsync -avz ./target/$1-$release.jar [email protected]$2:/data/java # 可以将 ip 和 jar 包 写变量 传参.
然后我们再 jenkins 里面配置 .
运行.
查看日志 ok.
SSH-plugin
还有一种方法, 就是使用 SSH 的插件, 进行远程处理执行 .
需要安装 SSH-plugin 的 插件
然后进行系统配置
找到 SSH remote hosts
点击 add
填写 ip , 端口 然后添加用户名 , 这边的 ip 是我们需要远程过去的机器 ip. 也就是 node 的 ip. jenkins ====》 node
因为是做实验. 直接就用 root 了.
添加完成后, 直接用就行了
配置完成后, 可以 check 一下 . 成功话 会出现 success.
这边完成之后, 我们到 jenkins 的项目工程里面去配置 .
在我们的执行步骤里面, 选择远程执行.
选择, 会出现远程机器的 ip 和端口. 线面红色的 warn 可以先忽略掉.
你 save 退出, 再进去之后, 就没有了.
然后这边就等于我们再 node 的 机器执行指令了 .
路径的话, 其实就是相当于, 在远程的 用户的 家目录下执行.
因为这边是使用 root 用户执行的, 所以 路径就相当于在 root 的 家目录下.
我们这边可以 写一些简单的指令测试下 .
- echo `pwd`>> /data/java/log.log
- echo "$release">> /data/java/log.log
- echo `date`>> /data/java/log.log
然后运行, 查看效果.
构建完成
jenkins 日志里面也指令执行完成了
我们去远程的机器, 也就是 node(也就是 134.171) 的机器上面查看一下 .
我们可以看到 之前需要的一些信息. 家目录, 版本号. 执行完成的时间.
这样, 就完成了 .
来源: http://www.bubuko.com/infodetail-3331137.html