需求:Jenkins部署在服务器A,另有服务器B,现在需要将所有部署的项目均用Jenkins管理起来,但是Jenkins构建部署的docker容器跑在服务器B中。
一、Jenkins设置-可执行远程shell命令
- 安装插件:进入系统管理/插件管理,查询SSH,即可查的“SSH plugin”插件,安装插件后重启。
- 配置SSH remote:重启完后,进入系统管理/系统设置界面,在“SSH remote hosts”点击“增加”,新加SSH sites。输入hostname、port、Credentials等信息。点击“保存”即可。
- 进入项目配置界面:在项目写脚本处,选择“Execute shell script on remote host using ssh”,在SSH site选择需要远程连接的SSH,以及在命令行界面写远程执行的shell命令。
二、两服务器设置-免密码登录
Jenkins有SCP插件,但是Jenkins插件管理有警告如下:“Warning: This plugin version may not be safe to use. Please review the following security notices:”。所以没有采取安装插件,而是做两个服务器之间的免密码登录。
在服务器A生成密钥对
ssh-keygen -t rsa -P ""
执行上述命令,一路回车