GitLab 是一个用于仓库管理系统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。 在GitLab的官方网站上面对Ubuntu的支持也是很好的,有比较详尽的安装指南。 在介绍postfix的地方有少部分的坑,本文抛砖引玉,解决一些我遇到的坑。 本文主要针对Ubuntu 16.04,介绍如何安装Gitlab。其他的Ubuntu可以作为一个参考。
安装需要的库和软件
1
| sudo apt-get install curl openssh-server ca-certificates postfix
|
postfix用来发送邮件,由于需要发送验证邮件,所以需要装这个,这里官方推荐postfix。
添加Gitlab的包并进行安装
1 2
| curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash sudo apt-get install gitlab-ce
|
除了上述安装脚本的方式,你还可以下载直接安装。
1 2
| curl -LJO https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/xenial/gitlab-ce-XXX.deb/download dpkg -i gitlab-ce-XXX.deb
|
配置和启动Gitlab
1
| sudo vim /etc/gitlab/gitlab.rb
|
- 修改外部链接
1
| external_url 'http://192.168.2.248:10080'
|
- 修改时区
1
| gitlab_rails['time_zone'] = 'Asia/Shanghai'
|
- 邮箱设置
1 2 3 4 5 6
| # gitlab_rails['gitlab_email_enabled'] = true gitlab_rails['gitlab_email_from'] = 'xxx@your_mail.com' gitlab_rails['gitlab_email_display_name'] = 'Gitlab' gitlab_rails['gitlab_email_reply_to'] = 'xxx@your_mail.com' # gitlab_rails['gitlab_email_subject_suffix'] = ''
|
- 邮箱服务
1 2 3 4 5 6 7 8 9 10 11 12 13
| # # #
gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.exmail.qq.com" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "xxx@your_mail.com" gitlab_rails['smtp_password'] = "your_password" gitlab_rails['smtp_domain'] = "exmail.qq.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false
|
- nginx监听端口
1 2
| nginx['listen_addresses'] = ['192.168.2.248'] nginx['listen_port'] = 10080
|
配置完成后,执行下面命令使变更生效。
1
| sudo gitlab-ctl reconfigure
|
访问Gitlab
在浏览器输入 http://192.168.2.248:10080 即可访问。首次登录需要为root管理员设置密码。
汉化教程
请先使用官方包安装或升级完成,确认当前版本。
1
| sudo cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
|
假设当前版本为v9.0.0
,并确认汉化版本库是否包含该版本的汉化标签(-zh
结尾),也就是是否包含v9.0.0-zh
。如果版本相同,首先在本地clone
仓库。
1 2 3 4
| # 克隆汉化版本库 git clone https://gitlab.com/xhang/gitlab.git # 如果已经克隆过,则进行更新 git fetch
|
然后比较汉化标签和原标签,导出patch用的diff文件。
1 2
| # 导出9.0.0 版本的汉化补丁 git diff v9.0.0 v9.0.0-zh > ../9.0.0-zh.diff
|
然后上传9.0.0-zh.diff
文件到服务器。
1 2 3
| # 停止 gitlab sudo gitlab-ctl stop sudo patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 9.0.0-zh.diff
|
确定没有.rej
文件,重启GitLab即可。
执行重新配置命令
1
| sudo gitlab-ctl reconfigure
|
如果汉化中出现问题,请重新安装Gitlab(注意备份数据)。
参考官网