前段时间在使用 Nginx 和 Git 搭建了一个简单的 Git 源代码服务器, 随着项目的增多, 管理起来有些不便, 于是打算再安装一个 GitLab CE 作为内部的源代码管理服务器。
操作系统用的是最新发布的 Ubuntu 16.04 LTS, 这个也是 GitLab 的安装文档中推荐的操作系统。 新建虚拟机, 全新安装 Ubuntu 16.04 LTS , 一切都顺利。
GitLab 有两种安装方式, 分别是从源代码安装和用 deb 软件包安装, 如果打算进行二次开发的话, 可以考虑从源代码安装。 不过对我来说, 不打算进行二次开发, 所以直接用 deb 软件包的形式进行安装了。
依照 GitLab 的安装文档, 依次运行下面的命令即可:
安装和配置必须的依赖项
sudo apt-get install curl openssh-server ca-certificates postfix
安装完之后, 会弹出 smtp 的配置页面, 如果不需要邮件服务的话, 直接忽略即可, 如果需要邮件服务, 根据提示进行配置。
添加 GitLab 包服务器并安装 GitLab CE
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
上面的命令会添加 GitLab 包服务器的配置信息到 /etc/apt/sources.list.d
目录, 添加一个 gitlab_gitlab-ce.list
文件到这个目录, gitlab_gitlab-ce.list
的内容如下:
more /etc/apt/sources.list.d/gitlab_gitlab-ce.list
# this file was generated by packages.gitlab.com for
# the repository at https://packages.gitlab.com/gitlab/gitlab-ce
deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ xenial main
deb-src https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ xenial main
现在可以开始安装 GitLab CE 了, 命令如下:
sudo apt-get install gitlab-ce
这个命令会按照默认配置安装 GitLab CE 及其必须的依赖项。
配置并启动 GitLab CE
sudo gitlab-ctl reconfigure
为了照顾大多数人, 汉化还是必须的, 已经有热心网友南靖男提供了汉化版,根据他的汉化指南,进行如下操作:
首先确认安装的版本
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
得到的版本号是 8.7.3
克隆 GitLab 的汉化分支
git clone https://gitlab.com/larryli/gitlab.git
生成汉化的补丁文件
前面的到的版本号是 8.7.3
, 所以我们需要的是分支 8-7-stable
的汉化, 通过 git diff
命令生成这个补丁文件:
sudo git diff origin/8-7-stable..8-7-zh > ~/8-7.diff
应用汉化补丁文件
# 先停止 GitLab
sudo gitlab-ctl stop
# 应用汉化补丁
cd /opt/gitlab/embedded/service/gitlab-rails
git apply ~/8-7.diff
# 启动 GitLab
sudo gitlab-ctl start
现在来看看成果吧, 打开浏览器, 浏览 https://127.0.0.1/
, 截图如下:
当然, 这只是一个简单而愉快的开始, 真正用起来的话还要考虑日常的维护、 备份等, 这个还需要以后慢慢研究了。