gitlab介绍
- Gitlab 官方文档
- Gitlab 中文文档
- GitLab 可充当 Maven、Npm、Pypi、Docker 等存储库
常用命令
sudo gitlab-ctl restart
重新启动sudo gitlab-ctl reconfigure
重新配置(运行中的项目,重新配置后,数据也不会丢失)
备份与恢复 ^1
备份
- 新建备份目录
1 | mkdir -p /data/backup/gitlab |
- 备份配置
sudo vim /etc/gitlab/gitlab.rb
1 | gitlab_rails['manage_backup_path'] = true |
- 重载配置
sudo gitlab-ctl reconfigure
- 手动备份
sudo gitlab-rake gitlab:backup:create --trace
- 自动备份
sudo vim /etc/crontab
打开定时配置文件0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
(每天凌晨2点进行备份),添加到定时配置文件中systemctl reload crond
重新加载配置
恢复
1 | # 停止相关数据连接服务 |
问题集锦
- 访问项目首页(如:http://114.55.888.888/),结果页面不显示,地址栏的地址变成 http://gitlab/users/sign_in
- 尝试方法:首先确保
/etc/gitlab/gitlab.rb
中的设置了external_url
(如:external_url "http://www.example.com"
),如果设置了,运行命令重新配置(sudo gitlab-ctl reconfigure
,无需重启)。
- 尝试方法:首先确保
页面显示
Forbidden
问题 ^2- 主要是gitlab做了rack_attack防止攻击,针对某个IP并发过大,就会限制那个IP的访问,解决办法就是把宿主机IP加入到白名单当中。
去掉配置注释
vi /etc/gitlab/gitlab.rb
1
2
3
4
5
6
7gitlab_rails['rack_attack_git_basic_auth'] = {
'enabled' => true,
'ip_whitelist' => ["127.0.0.1","10.10.10.10"],
'maxretry' => 300,
'findtime' => 5,
'bantime' => 60
}重新加载配置并重启服务
gitlab-ctl reconfigure
管理员
- 管理员登录可在界面上对gitlab进行基本配置
- 找回管理员密码:https://www.jianshu.com/p/25afcfd02019
- 设置项目上限:管理员登录访问:/admin/users/ 编辑用户设置项目上限
参考文章