世界即时:Git服务器搭建与Jenkins交互下代码

2023-01-12 17:26:15 来源:51CTO博客

今天在测试jenkins 拉代码的时候,又出现一些权限和交互的问题,今天再总结一下​:


(资料图)

一,Git服务器的配置根据这里的指导直接操作

​​https://www.runoob.com/git/git-server.html​​ ​

特别要注意里面git账号和文件的权限,ssh文件的权限(全部按照这里说的操作)​

二,Jenkins服务器配置​

记住在使用Jenkins网页拉取代码和在Jenkins服务器上拉取代码时,使用的SSH秘钥位置是完全不同的​

通过Jenkins网页访问git服务器的时候其实是利用jenkins账号来访问的,他调用的ssh key相关信息存储在/var/lib/jenkins/.ssh中,这个文件夹的属主和属组必须是jenkins,而且权限不能太大,也不能太小,都有可能导致无法访问​直接登录jenkins 服务器访问git服务器的时候,用的是当前登录的用户的用户目录下的.ssh文件,文件的属主和组都必须是当前用户,而且权限也不能太大,不然也无法访问​

这是jenkins的ssh账号信息,把这里的pub key ​

Copy到git服务器的authorized.keys 文件中​

如果权限不对的话,这里一直报错,检查的方法即使在jenkins服务器上切换到jenkins 账号​

根据jenkins服务器上登录界面的提示​

git ls-remote -h -- git@10.180.116.165:/home/gitrepo/runoob.git HEAD只要这个命令在jenkins用户下操作没有什么问题,基本上在jenkins网页登录git服务器就没有问题,可以根据这个命令中报错提示,去找原因(注意,这条命令执行不需要任何其他操作才能成功)​

这是另外一台Git服务器,其他操作都一样,唯一的差别就是操作​

git ls-remote -h -- git@10.180.116.175:/home/gitrepo/runoob.git HEAD这条命令的时候需要输入密码(这里貌似是认证的ssh key没有生效,所有需要输入密码验证,检查git的auth 下的key和jenkins服务器的key知否一致,如果一致,理论上不需要其他的验证,ssh key就应该已经交互了)​

​​https://blog.csdn.net/bigwood99/article/details/107073603​​这个文件对jenkins中权限的设置,写的比较清楚​

标签: 服务器的 服务器上 也不能太

上一篇:最新消息:Oracle SQL 两个日期类型毫秒值求差,日期转毫秒,时间差(ms)自定义函数解决毫秒差
下一篇:世界快看:【深入浅出Seata原理及实战】「入门基础专题」带你透析认识Seata分布式事务服务的原理和流程(1)