gitlab要和jenkins进行联动,所以必须要需要对jenkins的安全做一些设置,依次点击系统管理-全局安全配置-授权策略,勾选"匿名用户具有可读权限"
注意下面的的跨站点伪造保护(CSRF)请求必须要关闭,但是在Jenkins版本自2.2xx版本之后,在web界面里已经没法关闭了:
所以在当前web界面里暂且不要管它,点击下面的保存。
gitlab要触发jenkins的话,就必须要关闭跨站点伪造请求,web界面里已经没法关闭了,所以要需要做如下设置
[root@vms9 ~]# docker exec -u root -it jenkins bash
[root@44a32750c94c /]#
[root@44a32750c94c /]# vi /usr/local/bin/jenkins.sh
找到exec java那行(大概是在第37行),添加-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true
最终的效果如下
exec java -Duser.home="$JENKINS_HOME" -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true "$
然后重启jenkins容器
[root@vms9 ~]# docker restart jenkins
jenkins
[root@vms9 ~]#
再次登录到web界面查
看 跨站点伪造请求的设置:
这里已经是关闭了。