Gitlab搭建教程详解

 

 

 

 

 

Gitlab搭建教程详解

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

人:             

完成日期:    2017-05-11     

人:                    

审核日期:                    

 

 

 

 

 

 

 

 

 

修改记录

名称

版本号

拟制人/

修改人

拟制/修改日期

更改理由

主要更改内容

(写要点即可)

Gitlab服务器搭建

V1.0


2017.05.11

初稿

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

注1:每次更改Gitlab配置时,需填写此表。

注2:文件第一撰写时,“更改理由”、“主要更改内容”栏写“无”。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

系统信息

操作系统版本

CentOS release 6.2 (Final)

Kernel \r on an \m

Linux localhost 2.6.32-220.el6.x86_64 #1 SMP Tue Dec 6 19:48:22

GMT 2011 x86_64 x86_64 x86_64 GNU/Linux

硬件信息

CPU:

model name : 2 Intel(R) Xeon(R) CPU E5-2630 v2 @ 2.60GHz

cpu MHz : 2600.000

cache size : 15360 KB

cpuid level : 13

 

内存:

MemTotal    : 8062088 kB

 

硬盘:

文件系统        容量   已用  可用 已用%% 挂载点

/dev/sda3              75G   15G   57G  22% /

tmpfs                 3.9G     0  3.9G   0% /dev/shm

/dev/sda1             194M   25M  160M  14% /boot

/dev/sdb1             197G   48G  140G  26% /work

 

网卡:

e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:31:08:3c

e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection

e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None

eth0: no IPv6 routers present

搭建Gitlab

Gitlab版本

研发中心目前使用的版本为8.9.5

Rpm包名:gitlab-ce-8.9.5-ce.0.el6.x86_64.rpm

下载地址

外网:https://packages.gitlab.com/gitlab/gitlab-ce

Svnhttps://192.168.49.250/svn/software/GIT/gitlab/rpm

安装依赖项

Centos 6 7 系统上,下面的命令将在系统防火墙里面开放HTTPSSH端口, 请依次执行

sudo yum install curl openssh-server openssh-clients postfix cronie

sudo service postfix start

sudo chkconfig postfix on

sudo lokkit -s http -s ssh

安装rpm

cd 进入到gitlab-ce-8.9.5-ce.0.el6.x86_64.rpm所在目录,执行以下命令:

rpm -i gitlab-ce-8.9.5-ce.0.el6.x86_64.rpm

启动Gitlab

端口修改

vi /etc/gitlab/gitlab.rb

修改external_url 'http://192.168.x.x:8099'

修改nginx['listen_port'] = 8099

:wq保存退出

防火墙修改

vi /etc/sysconfig/iptables

添加:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8099 -j ACCEPT

 

:wq保存退回

 

重启防火墙

service iptables restart

重新加载配置文件

sudo gitlab-ctl reconfigure

访问Gitlab

http://192.168.x.x:8099/

 

Gitlab使用

New Group

使用Group把相同类型或者同一小组的Project联合起来管理,方便对人员进行权限控制及管理。

具体如下:

 

 

New Project

Gitlab中点击右上角 “+” 即可新建项目

 

 

Visibility Level:

Private 只有授权才可以访问(默认选择此项)

Internal:内部人员可以访问(公用项目组可以选择此项)

Public 匿名用户可以访问

Project选择InternalGroup必须设置为Internal或者Public。如果GroupPrivateProject必须为Private

 

Internal项目不会像Private项目一样在首页直接显示,查看方法:

GroupExplore Group

New User

新员工申请帐号及权限要走OASVN&Git申请工作流,默认帐号为邮箱前缀。

 

Can create group: 此项只有组长以上领导才勾选。

修改密码

首次登录gitlab必须强制进行密码修改。默认不少于8位。

Gitlab备份

Gitlab 将所有project打成tar包方式备份

备份命令

执行以下命令备份:

/opt/gitlab/bin/gitlab-rake gitlab:backup:create

备份目录

备份文件存放在以下目录:

/var/opt/gitlab/backups/1494486030_gitlab_backup.tar

定时备份

利用系统命令crontab 进行定时备份

执行crontab -e,输入以下内容

0 9-19/2 * * 1-5 /opt/gitlab/bin/gitlab-rake gitlab:backup:create

:wq保存退出

异机备份

1.利用rsync命令对备份目录进行同步,此任务只是把主服务器备份的tar包同步过来,执行以下定时任务命令(需要提前配置好rsync):

30 9-19/2 * * *  rsync -vzrtopg --progress --delete --password-file=/etc/rsync_client.pass backup@192.168.6.102::gitlab /var/opt/gitlab/backups/

2.进行数据同步

5 10-22/2 * * * rsync -vzrtopg --progress --delete --password-file=/etc/rsync_client.pass backup@192.168.6.102::opt_gitlab /opt/gitlab
5 10-22/2 * * * rsync -vzrtopg --progress --delete --exclude backups/ --password-file=/etc/rsync_client.pass backup@192.168.6.102::var_opt_gitlab /var/opt/gitlab


Gitlab还原

停止相关服务

gitlab-ctl stop unicorn

gitlab-ctl stop sidekiq

从某编号备份中恢复

eg: 从备份文件1494486030_gitlab_backup.tar中恢复,执行以下命令:

gitlab-rake gitlab:backup:restore BACKUP=1494486030

启动Gitlab

sudo gitlab-ctl start

注意事项

还原后会出现点击project出现500现象,若出现此现象请执行下面命令:

sudo gitlab-rails runner  "Project.where.not(import_url: nil).each { |p| p.import_data.destroy if p.import_data }"

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值