1. gitlab的安装:html
直接参考官网文档:https://about.gitlab.com/downloads/#ubuntu1604。nginx
1.1 安装配置依赖环境:git
sudo apt-get install curl openssh-server ca-certificates postfix
1.2 安装Gitlab:web
可分如下两种状况:直接安装最新版本和选择安装所需版本。redis
1.2.1 直接安装最新版本:sql
若是没有版本要求,选择直接安装最新便可。apache
#[-s去掉,可显示下载的详细信息] curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash sudo apt-get install gitlab-ce
1.2.2 选择安装所需版本:ubuntu
在gitlab迁移时,须要保证两个gitlab之间版本一致,故gitlab迁移时最好选择这种方式(虽然还能够选择将原始gitlab升级到最新版本,再将数据备份,而后迁移,但这样风险太大,在升级过程当中可能会发生故障,致使数据丢失。因此尽可能不要动原始的gitlab,先进行数据备份,而后选择安装一个和旧版本一致gitlab进行安装,再作数据迁移;迁移以后能够再选择升级,即便新gitlab挂掉,还有一个可用的旧gitlab)。vim
首先查看旧gitlab版本(在gitlab运行状态下)(参考:http://stackoverflow.com/questions/21068773/checking-of-gitlab-version):segmentfault
sudo gitlab-rake gitlab:env:info
上图中间GitLab information中的版本即为gitlab的版本。
[官网:http://docs.gitlab.com/omnibus/manual_install.html
https://packages.gitlab.com/gitlab/gitlab-ce
https://packages.gitlab.com/app/gitlab/gitlab-ce/search?q=8.11.5
]
在这里拿gitlab8.11.5版本举例说明:
========================================================[强势的分隔线]---开始
========================================================[强势的分隔线]
最近外网被qiang,选择使用清华镜像https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/
注意: gitlab-ce 镜像仅支持 x86-64 架构
Debian/Ubuntu 用户
首先信任 GitLab 的 GPG 公钥:
curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null
再选择你的 Debian/Ubuntu 版本,文本框中内容写进 /etc/apt/sources.list.d/gitlab-ce.list
sudo vim /etc/apt/sources.list.d/gitlab_gitlab-ce.list
选择Ubuntu的版本:
#Ubuntu 14.04 LTS deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu trusty main #Ubuntu 16.04 LTS deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main
将镜像站放到开始位置![此处演示的Ubuntu 14.04 LTS]
安装 gitlab-ce:
sudo apt-get update sudo apt-get install gitlab-ce=8.11.5-ce.0
========================================================[强势的分隔线]
========================================================[强势的分隔线]---结束
#[-s去掉,可显示下载的详细信息] curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash sudo apt-get install gitlab-ce=8.11.5-ce.0
或者
ubuntu14中gitlab的镜像安装包:
curl -LJO https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/xenial/gitlab-ce-8.11.5.deb/download dpkg -i gitlab-ce-8.11.5.deb
1.3 配置启动gitlab: [Mark Fletcher 说,修改配置以后,须要从新执行该命令]
sudo gitlab-ctl reconfigure
查看服务状态:
sudo gitlab-ctl status
中止服务:
gitlab-ctl stop
启动服务:
gitlab-ctl start
#查看全部服务的日志信息 sudo gitlab-ctl tail
# 检查redis的日志 sudo gitlab-ctl tail redis # 检查postgresql的日志 sudo gitlab-ctl tail postgresql # 检查gitlab-workhorse的日志 sudo gitlab-ctl tail gitlab-workhorse # 检查logrotate的日志 sudo gitlab-ctl tail logrotate # 检查nginx的日志 sudo gitlab-ctl tail nginx # 检查sidekiq的日志 sudo gitlab-ctl tail sidekiq # 检查unicorn的日志 sudo gitlab-ctl tail unicorn
1.4 web登陆并配置:
浏览器地址中输入http://[ip地址]。
若有其余问题可参考:http://blog.csdn.net/discoverer100/article/details/51814171
2. gitlab卸载:[貌似有些版本很差使]
前提:必须在Gitlab运行状态下才能卸载。
# Stop gitlab and remove its supervision process sudo gitlab-ctl uninstall # Debian/Ubuntu sudo dpkg -r gitlab-ce # Redhat/Centos # sudo rpm -e gitlab-ce
3. 备份:(参考:http://www.javashuo.com/article/p-tnswkclv-cu.html)
3.1 建立备份:
gitlab-rake gitlab:backup:create
命令会在/var/opt/gitlab/backups
目录下建立一个名称相似为1393513186_gitlab_backup.tar
的压缩包, 这个压缩包就是Gitlab整个的完整部分, 其中开头的1393513186
是备份建立的日期.
注:该目录,只能在gitlab中止运行状态下,才能够切换进去。
你也能够经过修改/etc/gitlab/gitlab.rb
来修改默认存放备份文件的目录:
gitlab_rails['backup_path'] = '/mnt/backups'
/mnt/backups
修改成你想存放备份的目录便可, 修改完成以后使用gitlab-ctl reconfigure
命令重载配置文件便可.
4. Gitlab 恢复:
# 中止相关数据链接服务 sudo gitlab-ctl stop unicorn sudo gitlab-ctl stop sidekiq # 从1393513186编号备份中恢复 sudo gitlab-rake gitlab:backup:restore BACKUP=1393513186 # 启动Gitlab sudo gitlab-ctl start
5. Gitlab迁移:
迁移如同备份与恢复的步骤同样, 只须要将老服务器/var/opt/gitlab/backups
目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups
便可(若是你没修改过默认备份目录的话)。 而后执行上述恢复命令。
可是须要注意的是新服务器上的Gitlab的版本必须与建立备份时的Gitlab版本号相同. 好比新服务器安装的是最新的7.60版本的Gitlab, 那么迁移以前, 最好将老服务器的Gitlab 升级为7.60在进行备份.
6. Gitlab服务器IP地址设置:
修改Gitlab服务器地址,让其余用户能够直接访问。
修改gitlab.yml文件:( 该文件默认位于/opt/gitlab/embedded/service/gitlab-rails/config目录之下)
以下图(可参考:http://blog.csdn.net/yulei_qq/article/details/53134654):
重启GitLab:
sudo gitlab-ctl restart