Ubuntu下部署Gitlab并汉化
因为工作室原来的Gitlab挂了,服务器不再续费,所以重新部署Gitlab并且汉化
首先先看下官方文档,里面记录了一些主要步骤,但是由于环境因素,所以有些步骤不太适用
1. 安装并配置必要的依赖项
1 | sudo apt-get update |
安装Postfix以发送通知电子邮件
1 | sudo apt-get install -y postfix |
安装postfix过程中,选择“Internet Site”并按Enter键。使用服务器的外部DNS作为“邮件名称”,然后按Enter键。如果出现其他屏幕,请继续按Enter键接受默认值。(官网上的描述,照抄)
2. 安装软件包
在官网上是直接通过下载他的Shell文件,执行他的Shell文件进行安装的
官网文档下载
1 | curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash |
1 | sudo EXTERNAL_URL="http://gitlab.example.com" apt-get install gitlab-ee |
上面的“http://gitlab.example.com"改为自己要访问的Gitlab实例的URL
外部上传安装
官网上的在国内比较慢,很慢,所以这里不太建议使用官网的方法
官网下载地址:https://packages.gitlab.com/gitlab/gitlab-ce
将压缩包上传到服务器
1 | put gitlab-ce_11.8.1-ce.0_amd64.deb |
解压安装
1 | sudo dpkg -i gitlab-ce_11.8.1-ce.0_amd64.deb |
换源安装
因为第二种方法上传,还要解压安装,所以这里墙裂推荐换源安装,直接添加清华大学的源,上面有gitlab最新版。
- 修改
/etc/apt/sources.list
,添加以下行
1 | deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main |
- 开始安装
1 | sudo apt-get install gitlab-ce # 安装社区版 |
3. 创建一些目录
1 | sudo mkdir -p /etc/gitlab |
在gitlab.rb 上插入这么一句
1 | external_url = 'http://git.example.com' |
上面也是将 http://git.example.com 改为你要访问Gitlab实例的URL,如:http://198.2.2.1(随便写的)
4. 启动Gitlab
1 | sudo gitlab-ctl reconfigure # 初始化 |
1 | sudo gitlab-ctl start # 启动Gitlab |
1 | sudo gitlab-ctl stop |
5. 汉化
由于要中文版,所以Gitlab要汉化
- 首先确认自己的Gitlab版本号
1 | cat /opt/gitlab/embedded/service/gitlab-rails/VERSION |
- 从社区版 https://gitlab.com/xhang/gitlab/ 找到与Gitlab版本相对应的汉化版,同时下载
1 | sudo wget wget -cO gitlab-11.8_zh.tar.gz https://gitlab.com/xhang/gitlab/repository/archive.tar.gz?ref=11-8-stable-zh |
==上面的数字都替换为相对应的版本号==
- 解压压缩包
1 | sudo tar zxvf gitlab-11.8_zh.tar.gz |
- 停止Gitlab的服务
1 | sudo gitlab-ctl stop |
- 备份gitlab-rails/ 下的所有内容,打包成一个压缩包(该目录下主要是Web应用部分)
1 | sudo tar zcvf /opt/gitlab/embedded/service/gitlab-rails-bak.tar.gz gitlab-rails |
- 将解压后的汉化版覆盖原来的gitlab-rails下的内容(比如你现在在~/gitlab目录下,该目录下有个gitlab-11-8-stable-zh的目录)
1 | sudo cp -rf gitlab-11-8-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/ |
- 启动服务
1 | sudo gitlab-ctl start |
- 重新配置Gitlab
1 | sudo gitlab-ctl reconfigure |