1. 问题
最近使用jenkins进行项目打包,因为代码服务器和应用服务器在两台不同的机器上,在代码服务器打包好之后要
使用scp命令copy搭配用于服务器上,在jenkins中使用scp命令时,总是提示权限不足,如下图所示:
2. 解决方法
在网上通过搜索发现,要在jenkins配置代码服务器的public-key。过程如下:
2.1 复制jenkins服务器用户目录下的.ssh/id_rsa.pub中的内容
cat ~/.ssh/id_rsa.pub
2.2 将上面的内容copy到应用服务器的~/.ssh/authorized_keys
,如果该文件中有多个public-key,重起一行进行粘贴
2.3 这个时候去构建,可能还是会提示权限不足,那是因为第一次的时候jenkins必须需要我们与应用服务器有过一次密码输入的scp操作,所以我们只需要在代码服务器中简单的执行一次与应用服务器的scp命令,并输入密码即可
原因:虽然我们已经配置了相许信任,但是第一次使用scp命令需要先自己手动在shell中端中执行一次才可以。那么我们使用scp随意复制个文件过去,输入密码。