xshell连接虚拟机时基于ssh协议,默认端口22
将本机文件发送到另一台虚拟机:
scp out.tar root@192.168.40.100:/home
本地文件 用户名@ip:对方路径
之后输入密码
远程连接另一虚拟机:
ssh root@192.168.40.100
之后输入密码
退出命令:
exit
我们需要在jenkins中不输入密码的情况下将文件发送出去:
生成密钥对(公钥+私钥)
ssh-keygen -t rsa
查看生成的密钥对:
ll /root/.ssh/
将公钥传输到目标服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub root@远程服务器IP
验证是否正确
ssh root@远程服务器IP
jenkins内操作:
-
下载安装插件:Publish Over SSH
-
设置系统配置
Manage Jenkins—>configure system—>publish over ssh
设置ssh连接linux -
新建一个maven项目
-
拉取源码,构建war包
-
将war包发送给目标服务器的/home路径下
-
构建后操作
增加—>send build artifacts over ssh—>name(选择系统配置中的目标应用服务器)—>exec command(在目标服务器中要执行的操作)