jenkins 公钥配置

Jenkins所在服务器linuxA、应用服务器LinuxB

a生成的公钥 放到B服务器

服务器B,在/root/.ssh路径下建立authorized_keys文件

将服务器A生成的id_rsa.pub(公钥)内容复制到authorized_keys文件***意,是文件,不文件夹)

重启服务器B的SSH,命令:service sshd restart

 

打开Jenkins-系统管理-系统配置

 

Passphrase:密码(key的密码,如果你设置了)
Path to key:key文件(私钥)的路径
SSH Server Name:标识的名字(随便你取什么)
Hostname:需要连接ssh的主机名或ip地址,此处填写应用服务器IP(建议ip)
Username:用户名
Remote Directory:远程目录(根据需要填写文件传到此目录下)
“Use password authentication, or use a different key”:使用密码验证(这里使用了**认证所以不开启)

 

PS:使用过程中,一直传输文件为0个

Source Files:填写 **/*.war(可以写**/aa.war,但是写绝对路径或者相对路径都拿不到文件,奇怪?)

Remove prefix:移除目录(只能指定Transfer Set Source files中的目录,先试了一次,不写移除目录,看了一次传输过来的文件是什么路径,才确认移除的目录从哪里开始)

Remote directory:上传至文件的路径,由于在public over SSH中配置了“/”(根目录),这里就从配置的根目录下开始写

Exec Command:传输完成后,执行重启的命令。

 

参考::

#!/bin/bash    PID=`lsof -i:8895| grep LISTEN |awk '{print $2}'` //获取端口号8081的线程pid echo ${PID} #export BUILD_ID=dontKillMe if [[ $PID -ge 0 ]];then      kill -9 $PID fi //执行启动 nohup /home/jdk/jdk1.8.0_271/bin/java -jar /home/test3035/finance-v1.0.0-SNAPSHOT.jar --server.port=8895  > /home/test3035/order.log 2>&1 &