Feng’ Blog

CentOS7.4 搭建Gitlab服务器
GitLab 是一个开源的版本管理系统,提供了类似于 GitHub 的源代码浏览,管理缺陷和注释等功能,你可以将代...
扫描右侧二维码阅读全文
09
2018/09

CentOS7.4 搭建Gitlab服务器

GitLab 是一个开源的版本管理系统,提供了类似于 GitHub 的源代码浏览,管理缺陷和注释等功能,你可以将代码免费托管到 GitLab.com,而且不限项目数量和成员数。最吸引人的一点是,可以在自己的服务器上搭建 GitLab CE (社区免费版)版本,方便内部团队协作开发和代码管理。
gitlab.jpg

gitlab 官网:https://about.gitlab.com

gitlab CE下载站点:https://packages.gitlab.com/gitlab/gitlab-ce?page=60

gitlab 清华镜像站点:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/

浙大开源镜像站:http://mirrors.lifetoy.org/gitlab-ce/yum/el7/

1. 安装:

GitLab 提供了两种安装方式:源码手动编译安装和软件包管理安装。

源码手动编译安装虽然配置灵活,但过程比较麻烦,不容易安装成功,所以我这里选择软件包管理安装的形式。

1.1 使用 GitLab 提供仓库在线安装:

  1. curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
  2. yum install gitlab-ce

国外的 GitLab 仓库访问速度较慢,可以使用国内的站点:

  1. curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash
  2. yum install gitlab-ce

1.2 下载离线软件包安装
如果网络速度不理想,可以使用离线软件包 rpm 的方式进行安装,下面提供了几个站点的下载地址。

GitLab 官方:https://packages.gitlab.com/gitlab/gitlab-ce?filter=rpms

清华大学 TUNA 开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

浙大开源镜像站:http://mirrors.lifetoy.org/gitlab-ce/yum/el7/

下载好 rpm 软件安装包后上传到服务器指定的目录下,通过以下命令进行安装:

  1. rpm -ivh gitlab-ce-8.9.6-ce.0.el7.x86_64.rpm

rpm 卸载软件安装包命令:

  1. rpm -e --nodeps gitlab-ce-8.9.6-ce.0.el7.x86_64

2. 启动 GitLab

安装完成之后,打开配置文件 /etc/gitlab/gitlab.rbexternal_url = 'http://git.example.com' 修改为自己的 IP 地址:external_url 'http://ip_address' ,然后执行下面的命令,对 GitLab 进行编译:

  1. gitlab-ctl reconfigure

完成后,使用浏览器访问:http://ip_address 可进入 GitLab 登录页面,首次访问系统会让你重新设置管理员的密码,默认的管理员账号是 root,如果你想更改默认管理员账号,登录系统后可以修改帐号名。

3. GitLab 基本配置

GitLab 的相关参数配置都存在 /etc/gitlab/gitlab.rb 文件里。自 GitLab 7.6 开始的新安装包, 已经默认将所有的参数写入到 /etc/gitlab/gitlab.rb 配置文件中。

3.1 配置端口

GitLab 默认使用 80 端口对外提供服务,因为 80 端口被其他服务占用,所以需要更改。打开 /etc/gitlab/gitlab.rb 配置文件,修改 external_url 'http://ip_address'external_url 'http://ip_address:new-port'

重新编译配置:

  1. gitlab-ctl reconfigure

这时候就可以通更改后的 IP + 端口号码进行访问了。

3.2 邮箱配置

以下是 163 邮箱的配置参考,打开 /etc/gitlab/gitlab.rb 配置文件,添加以下内容:

  1. gitlab_rails['smtp_enable'] = true
  2. gitlab_rails['smtp_address'] = "smtp.163.com"
  3. gitlab_rails['smtp_port'] = 25
  4. gitlab_rails['smtp_user_name'] = "test@163.com"
  5. gitlab_rails['smtp_password'] = "password"
  6. gitlab_rails['smtp_authentication'] = "login"
  7. gitlab_rails['smtp_enable_starttls_auto'] = true
  8. gitlab_rails['gitlab_email_from'] = "test@163.com"

注意: test@163.compassword 更新为自己邮箱地址和密码;邮箱需要开启 SMTP 协议。

重新编译配置即可生效:

  1. gitlab-ctl reconfigure

其它邮箱的配置可参考:https://doc.gitlab.cc/omnibus/settings/smtp.html

3.3 头像配置

GitLab 默认使用的是 Gravatar 头像服务,不过现在貌似 Gravatar 国内好像访问不了,导致 GitLab 默认头像破裂,无法显示,可以替换为多说 Gravatar 服务器。打开 /etc/gitlab/gitlab.rb 配置文件,增加下面这一行:

  1. gitlab_rails['gravatar_plain_url'] = 'http://gravatar.duoshuo.com/avatar/%{hash}?s=%{size}&d=identicon'

再分别执行以下命令即可

  1. gitlab-ctl reconfigure
  2. gitlab-rake cache:clear RAILS_ENV=production

也可以关闭 Gravatar 头像显示配置,登录 GitLab 管理员账户,进入设置界面(路径地址:http://ip:port/admin/application_settings ),取消以下选项即可。

wwwww.png

常用命令

GitLab 服务启动、停止、状态查询、修改配置生效等命令:

  1. gitlab-ctl start/stop/status/reconfigure # 服务启动、停止、状态查询、修改配置生效

也可以查看帮助文档获取更多命令信息:

  1. gitlab-ctl --help

GitLab使用gitlab-ctl日志查看的方法

Gitlab 默认的日志文件存放在/var/log/gitlab 目录下

# 查看所有日志

  1. sudo gitlab-ctl tail

# 查看nginx 访问日志

  1. sudo gitlab-ctl tail nginx/gitlab_acces.log

# 查看 postgresql 日志

  1. sudo gitlab-ctl tail postgresql
Last modification:January 9th, 2019 at 01:25 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment