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



下载安装Publish over SSH插件
2、配置服务器相关信息
要先在jenkins所在的机器上生成秘钥。生成方式为:
ssh-keygen -t rsa #产生公钥与私钥对

因为没加密码所以一路enter完成。此时在装有Jenkins服务器上的目录 /root/.ssh/文件夹下生成两个文件:
is_rsa 为密钥文件 id_rsa.pub 为公钥文件
网上大部分文件都通过以下语句将公钥文件复制到目标服务器:
ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.51.xxx.xxx
或者通过 scp -P 2226 id_rsa.pub root@10.241.131.8:/root/.ssh/ 命令复制文件
直接复制粘贴也行
打开 系统管理——>系统设置,下拉到底部的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---保存即可
点击构建:


浙公网安备 33010602011771号