背景
Gitlab的大名无须做多阐述,团队合作必不可少,本地局域网部署的更加安全,传输速度也更有保证~
Mark一下方便自己查阅
准备工作
后续补充
部署发布
后续补充
维护
1、启动、停止及重启
系统启动 :
sudo gitlab-ctl start
系统停止 :
sudo gitlab-ctl stop
配置重启 :
sudo gitlab-ctl reconfigure
系统重启 :
sudo gitlab-ctl restart
2、备份、自动备份,自动清理**
备份目录 :
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
可在/etc/gitlab/gitlab.rb
文件中修改 ,修改后需要重启配置或重启服务生效
手动备份 :
gitlab-rake gitlab:backup:create
自动备份 :采用定时任务执行自动备份的命令,目前采用crontab每天4点备份:
输入命令crontab -e
进行编辑
加入0 4 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
自动清理 :方法很多,也可自己设计定时任务清理,此处使用Gitlab自带的清理模式
gitlab_rails['backup_keep_time'] = 432000
可在/etc/gitlab/gitlab.rb
文件中修改,单位为秒,保存5天(5X3600X24=432000)
修改后需要重启配置或重启服务生效
3、Gitlab升级、汉化、恢复
安装包链接
https://packages.gitlab.com/gitlab/gitlab-ce/
Gitlab升级 :
yum install gitlab-ce-X.XX.X-ce.0.el7
网上说需要停止服务等,可能和GItlab不同的版本有关,目前的版本亲测可直接开搞即可;另外gitlab升级有一定的版本要求,比如8.0无法直接升级到12.0,需要先升级10.0后才能升级12.0,即需要多次升级,具体版本要求自行找文档,找不到直接升级,升级失败会提示你版本。
Gitlab汉化 :因为汉化后升级恢复可能会出现问题,因此公司内从Gitlab 8.10.0之后不再汉化,需要的自行爬帖
Gitlab恢复 :
gitlab-rake gitlab:backup:restore BACKUP=1510472027_2017_11_12_9.4.5
,
个别版本命令为gitlab-rake gitlab:backup:restore BACKUP=1537974886
(网上提到需要停止服务等,目前亲测可直接恢复,可能和版本有关)
!!!重要:Gitlab恢复必须保证当前新Gitlab系统和备份的源文件版本相同(测试时版本号完全相同,未尝试小版本号或中版本号不同的情况) ,CE和EE也必须相同
版本号获取:
yum list | grep gitlab-ce OR cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
4、FQA
问题 1: error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large
原因 : 有文件大小限制,导致推送失败。
解决方案:
a/修改上传大小限制使用 git config --global http.postBuffer 52428800 或 改为ssh提交 (git remote -v查询git的提交地址) git remote set-url origin ssh://liuzw@wpwl-inc.com/xxx.git
b/公司Gitlab服务器采用反向代理,Nginx对文件大小有限制。 vi /usr/local/nginx/conf/nginx.conf >> 在http配置段中加入 client_max_body_size 1000m;