jenkins 指定gitlab上的源码时,提示无权限
jenkins 指定gitlab上的源码时,提示无权限stdout:stderr: Permission denied, please try again.Permission denied, please try again.Permission denied (publickey,password).fatal: Could not read from remote repository.Pl
本篇文章用来记录jenkins集成时,遇到的问题;
参考文档1:http://www.jianshu.com/p/ed0edb93e234
问题说明:jenkins 指定gitlab上的源码时,提示无权限
问题原因:需要使用jenkins用户生成的SSH key,将密钥放到jenkins中,公钥放到git中。
方法如下:
1.在安装jenkins的linux机器上,添加jenkins用户,设置密码;我这里是有了jenkins用户,然后修改了jenkins用户的密码
[dev@vhost6 /]$ cat /etc/passwd | grep jenkins
jenkins:x:992:989:Jenkins Continuous Integration Server:/var/lib/jenkins:/bin/false
[dev@vhost6 jenkins]$ sudo passwd jenkins
[sudo] password for dev:
更改用户 jenkins 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
2.切换到jenkins用户上;
[dev@vhost6 jenkins]$ su - jenkins
密码:
上一次登录:四 3月 9 18:30:26 CST 2017pts/1 上
[dev@vhost6 jenkins]$ ll
总用量 0
[dev@vhost6 jenkins]$ pwd
/var/lib/jenkins
3.生成SSH Key
[dev@vhost6 jenkins]$ ssh-keygen -t rsa -C "你的邮箱" -f ~/.ssh/jenkins
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/dev/.ssh/jenkins.(这里保存的是私钥)
Your public key has been saved in /home/dev/.ssh/jenkins.pub.(这里保存的是公钥)
The key fingerprint is:
09:b3:2e:94:ea:c2:45:9a:b6:79:07:47:56:bf:df:af ylzyyy2016@126.com
The key's randomart image is:
+--[ RSA 2048]----+
| |
| . |
| + . |
| . + + o |
| + = . S . |
| + = o . |
|o = + . . . |
|.= . o . . |
| .o . Eo. |
+-----------------+
4.将公钥放入gitlab中,位置为:http://IP地址/profile/keys,Add an SSH key界面
Title可以随便取名字,将公钥放入Key输入框中,点击Add key按钮保存。
公钥长相是这样的:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABQDIAcy1jHMGm/3FjCQDIAcy1jHWk3oXPewg/pothQQLxFeq8DJn0BDLEeSIvYSGRzZGUcQvv3x8IAKLOgUp8g3iZJg5i4yqIbsteUgQ2Aw6t9Vb2SyKRoIFhiD8NDXQ0Cbvcdz4nvsLrOz4QDIAcy1jH+JVOc2oQDIAcy1jHQDIAcy1jHSQ59ga+rdWsGnDaR0mObMyFjGxwSDNK4IAPajHHZzBxmxANtr1GR4Xkwj4Eheo2cpD7QCSAuo7jY+YfJFZxB/o4ghY9StPeEqdP/yzZDr/qzyQdgV78n+SYpGxhH+u0CSzdmnbtJuKNNoCyXNEGWUVvYgtTPTZlbOspOt9 xxxxxx@xxx.com
5.将私钥放入jenkins中,不好描述,直接放图片了,跟着图片的步骤走就好;
1)
2)注意的地方
1:Kind要选择“SSH 。。。。。”
2:Username要填入jenkins
3:Private Key项,要选择Enter directly;并在Key中填入密钥;
4:Passphrase中输入密码
5:点击“Add”保存
3)Credentials项选择jenkins项,jenkins应该会自动链接一下gitlab,刚开始报的错误就没有了
到此,问题就解决了。
感谢给予我帮助的各个文档的作者。
更多推荐
所有评论(0)