运行SourceTree后GitLab响应Forbidden解决方法

公司的Git服务是由GitLab的docker容器搭建的,当初我搭建/升级/启动都很方便,且没修改gitlab.rb配置文件,用的都是默认配置.

在SourceTree升级到2.1.10.0后,竟然坑爹的默认后台并发查询git仓库更新,近百个项目,这个并发查询超了GitLab并发访问的阈值,直接封了IP.

解决方法

根据官方说明:Rack AttackIP Whitelist,解决方法三种:

  • 添加IP白名单.

  • 加大并发阈值.

  • 直接关闭Rack Attack.

这里我是加大并发阈值和添加IP白名单.

因为跑的是容器,那么就直接进挂载的文件夹里找到config/gitlab.rb后,打开并找到gitlab_rails['rack_attack_git_basic_auth']项,去掉注释,并修改为:

 gitlab_rails['rack_attack_git_basic_auth'] = {
   'enabled' => true,
   'ip_whitelist' => ["127.0.0.1","192.168.xxx.xxx"],
   'maxretry' => 200,
   'findtime' => 60,
   'bantime' => 3600
 }

这里在ip_whitelist字段后添加白名单IP即可,然后增加maxretry字段的值。