Gitlab 快速搭建

  这篇博客主要讲一下Gitlab如何进行快速搭建

安装前期

  安装最快并且方便的安装就是使用yum原来进行安装,在安装Gitlab前的准备就是对yum源进行配置。

Gitlab的yum源有官网也有其他的,这里我用的是清华大学的源。如下操作:

vim /etc/yum.repos.d/gitlab-ce.repo

[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

yum clean all 
yum makecache

# 安装
yum install gitlab-ce -y

 

配置Gitlab和启动

 

  安装完成后就可以进行启动了:

gitlab-ctl reconfigure   # 我在启动这个里时候一直报错,因为硬件配置过低,官方建议内存4G.
gitlab-ctl start

 

Gitlab服务的配置文件在 /etc/gitlab/gitlab.rb。

具体的配置参考官网,这里仅仅列出如何配置邮件。

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465 #鉴于阿里云25端口被封,使用465端口
gitlab_rails['smtp_user_name'] = "邮箱"
gitlab_rails['smtp_password'] = "邮箱密码"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true #使用465端口的话,需要加这个配置
 
##修改gitlab配置的发信人
gitlab_rails['gitlab_email_from'] = "邮箱"
user["git_user_email"] = "邮箱"
配置smtp邮件发送

 

重新配置Gitlab并启动:

gitlab-ctl reconfigure
gitlab-ctl restart

  

访问Gitlab

gitlab的默认配置文件在 /etc/gitlab/gitlab.rb, 修改该文件  nginx['listen_port']=8090

http://IP:8090

 

Gitlab 备份

GItlab 安装、备份、恢复、迁移、升级

Gitlab 安装

安装和配置必要的依赖环境

# 环境依赖
yum install curl openssh-server postfix
yum install postfix
service postfix start
chkconfig postfix on
# 必要的配置根据个人情况而定。

添加gitlab yum源

# 安装官方yum 源
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
# 安装清华yum 源   (这里给的是ce的地址,ee地址同理)
vim /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

yum 安装gitlab

# 安装 gitlab-ee 或 yum -y install gitlab-ce
yum -y install gitlab-ee

配置gitlab

安装完成后就可以进行启动了。

# 第一步是为了解析配置文件并使用从其提供的值运行。
gitlab-ctl reconfigure   # 我在启动这个里时候一直报错,因为硬件配置过低,官方建议内存4G.
gitlab-ctl start

gitlab 服务的配置文件在 /etc/gitlab/gitlab.rb 下,可以根据需要进行修改。

重新配置Gitlab 并启动:

gitlab-ctl reconfigure
gitlab-ctl restart
# 默认的访问端口需要通过修改/etc/gitlab/gitlab.rb文件中的nginx['listen_port']

Gitlab备份

Gitlab使用一条命令即可创建完整的Gitlab备份:

# 使用该命令会在gitlab备份目录(默认为/var/opt/gitlab/backups)下创建一个带时间戳的压缩包。
# 该方法适用yum安装gitlab使用。
gitlab-rake gitlab:backup:create
# /etc/gitlab/gitlab.rb 配置文件必须须备份
# /var/opt/gitlab/nginx/conf nginx配置文件
# /etc/postfix/main.cfpostfix 邮件配置备份

备份目录修改

可以通过/etc/gitlab/gitlab.rb配置文件来修改默认存放备份文件的目录。

gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"

/var/opt/gitlab/backups修改为你想存放备份的目录即可。

修改完成之后使用gitlab-ctl reconfigure命令重载配置文件即可。

自动备份

自动备份通过 crontab 命令实现。

0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
# 通过修改配置文件可以指定备份数量

恢复

恢复也比较简单:

# 停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
# 从1481598919编号备份中恢复
gitlab-rake gitlab:backup:restore BACKUP=XXXXXXX  # 备份id号
# 启动Gitlab
sudo gitlab-ctl start

迁移

迁移操作类似于备份-恢复操作。

但是需要注意的是新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同

/etc/gitlab/gitlab.rb gitlab配置文件须迁移,迁移后需要调整数据存放目录 。/var/opt/gitlab/nginx/conf nginx配置文件目录必须须迁移。

升级

  • 关闭gitlab数据业务

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-ctl stop nginx
  • 备份gitlab

gitlab-rake gitlab:backup:create
  • 升级

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
yum update gitlab-ce
或者直接安装高版本
yum install gitlab-ce-8.12.13-ce.0.el7.x86_64
或者上官网下载最新版本 gitlab对应软件包 [gitlab官网](https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-8.12.13-ce.0.el7.x86_64.rpm)
使用 rpm -Uvh gitlab-ce-8.12.13-ce.0.el7.x86_64
报错.
Error executing action `run` on resource 'ruby_block[directory resource: /var/opt/gitlab/git-data/repositories]'
解决方法:
sudo chmod 2770 /var/opt/gitlab/git-data/repositories
  • 启动

gitlab-ctl reconfigure
gitlab-ctl restart
# head -1 /opt/gitlab/version-manifest.txt   # 查看当前gitlab版本

 

 

posted @ 2018-07-02 13:31  40块钱抓娃娃  阅读(185)  评论(0编辑  收藏  举报