Jenkins做密钥凭证必须使用Jenkins用户执行免密钥操作(ssh-keygen),然后
公钥(cat /var/lib/jenkins/.ssh/id_rsa.pub)添加到gitlab web端:
私钥(cat /var/lib/jenkins/.ssh/id_rsa)添加到Jenkins web端,
#如下步骤是Jenkins上创建项目天津git RUL时如果报错如下时操作的:
git ls-remote -h ssh://git@116.181.16.90:55555/root/blueprintstandardmanage.git HEAD
输入yes回车,这时gitlab和Jenkins才能免密钥相通:
#注意:上面的这条命令是gitlab全部配置完成并且在gitlab上创建项目和上传代码后才能执行,ssh://git@116.181.16.90:55555/root/blueprintstandardmanage.git HEAD这个链接是gitlab已经上传了blueprintstandardmanage项目的代码后自动生成的,blueprintstandardmanage就是gitlab上创建的其中一个项目,116.181.16.90就是gitlab服务器。
#否则Jenkins上添加Repository URL时会报错Host key verification failed.
如果gitlab和Jenkins部署在同一台服务器上报错如上就操作如下,还是Jenkins用户下将公钥发送到本机即可:
还是在Jenkins用户来执行:
[jenkins@btpdi5gn root]$
ssh-copy-id -p55555 -i /var/lib/jenkins/.ssh/id_rsa.pub root@192.168.0.67
#否则Jenkins构建项目时会报错Host key verification failed.