一、报错信息如下图
二、问题分析
git服务器和jenkins安装服务器不在同一个服务器
git服务器也配置了jenkins安装服务器的密匙,也不行
分析:进入jenkins安装服务器生产的密匙是登录服务器用户的,在jenkins打包中,拉取代码时,是在jenkins用户下进行的。所以在git服务器配置的密匙不是jenkins用户的,所以报没有权限,或者找不到git仓库。
docker装的jenkins也是类似的,配的密匙是宿主机的,不是docker容器的
三、解决:
1、用docker安装的jenkins
1)、进入docker容器: docker exec -it jenkins bash
2)、生成rsa免密访问公钥: ssh-keygen -t rsa,一路回车即可
3)、将id_rsa.pub里的内容写入 git服务器中git用户HOME里.ssh里的authorized_keys里面
2、用jar包或者安装包安装的jenkins
1)、在安装jenkins服务器,生成rsa免密访问公钥: ssh-keygen -t rsa,一路回车即可
2)、将id_rsa.pub文件拷贝到jenkins安装目录中的.ssh中: cp -r /root/.ssh/ /var/lib/jenkins/.ssh/
3)、将三个文件的所属用户修改为jenkins用户
chown -R jenkins:jenkins id_rsa
chown -R jenkins:jenkins id_rsa.pub
chown -R jenkins:jenkins known_hosts
4)、将id_rsa.pub里的内容写入 git服务器中git用户HOME里.ssh里的authorized_keys里面
以上内容不懂的?问我!