如何确定GitLab安装是Omnibus还是通过源代码?
我正在研究将GitLab从旧服务器迁移到新服务器的过程。我需要做的第一件事就是确定GitLab是在哪个安装中(Omnibus vs.source),我无法确定 这篇文章()提到在GitLab根文件夹(/home/git/GitLab)中查找.git文件-我在那里没有看到.git文件。因此,根据该评论,安装是综合性的 但是,看这篇文章(),我无法运行:如何确定GitLab安装是Omnibus还是通过源代码?,gitlab,gitlab-omnibus,Gitlab,Gitlab Omnibus,我正在研究将GitLab从旧服务器迁移到新服务器的过程。我需要做的第一件事就是确定GitLab是在哪个安装中(Omnibus vs.source),我无法确定 这篇文章()提到在GitLab根文件夹(/home/git/GitLab)中查找.git文件-我在那里没有看到.git文件。因此,根据该评论,安装是综合性的 但是,看这篇文章(),我无法运行: sudo-gitlab-rake-gitlab:env:info(显示用于综合安装) 但我可以跑: bundle exec rake gitlab
sudo-gitlab-rake-gitlab:env:info
(显示用于综合安装)
但我可以跑:
bundle exec rake gitlab:env:info RAILS\u env=production
(显示用于源代码安装)
我看到了相互矛盾的答案。如何判断GitLab处于哪个安装中
在任何情况下,当我运行最后一个命令时,我会得到以下结果(如果有帮助):
系统信息
系统:Debian 7.10
当前用户:git
使用RVM:否
Ruby版本:2.0.0p247
Gem版本:2.0.3
捆绑程序版本:1.7.2
Rake版本:10.1.0
GitLab信息
版本:6.0.2
修订:10b0b8f
目录:/home/git/gitlab
数据库适配器:mysql2
网址:
HTTP克隆URL:
SSH克隆URL:git@107.178.218.39:some-project.git
使用LDAP:否
使用Omniauth:否
GitLab外壳
版本:1.7.0
存储库:/home/git/Repositories/
Hooks:/home/git/gitlab shell/Hooks/
吉特:/usr/bin/Git
您应该检查此文件是否可用:
/etc/gitlab/gitlab.rb
如果不是,则从源安装。我的建议是将您的安装更改为综合安装,这会使升级更加容易
有关升级到omnibus安装的更多信息,请阅读此内容:
更新1
注意:如果MySQL用作数据库,则必须进行转换,请参阅文档
要从源代码升级安装,您有2个选项:
确保您有一个与当前gitlab版本匹配的omnibus gitlab包。(如果可能,我将最后一次从源代码升级)
1。在同一台服务器上安装gitlab with omnibus。
开始之前,从服务器创建快照,以确保始终可以返回到工作点。还要确保关闭gitlab
您应该使用omnibus选项安装gitlab:
sudo apt-get install curl openssh-server ca-certificates postfix
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash sudo apt-get install gitlab-ce
可以在服务器上同时安装源安装的omnibus en。如果出现问题,您可以随时更改回源代码安装
然后按照文档中的说明进行操作:
2。通过备份安装gitlab。
使用备份时,您甚至可以将gitlab安装转移到新服务器。我用这种方法,非常简单
在进行备份之前,请关闭gitlab,以确保备份和恢复过程之间没有任何更改
要开始,请进行备份:
sudo-u git-H bundle exec rake gitlab:backup:create RAILS\u ENV=production
另请参见此报道,以了解更多信息
之后,您可以将备份移动到新的gitlab服务器,或稍后使用它导入备份
要在omnibus安装中导入它(简而言之,请阅读):
既然你说这是关于生活环境的。您可以执行以下操作,在本地计算机上安装一个微型服务器/或进行升级,以使您感觉舒适。之后,您可以在live env上执行同样的操作。我的猜测是,如果此人没有克隆git repo来下载源代码,而是下载了一个zip文件,那么就不会有一个.git文件,即使它不是综合安装的…只是想一想为什么.git策略可能不可靠。嗯,我不确定。不幸的是,设置一切的人已经不在了,所以在这方面会有点挑战性。
/etc/gitlab
不存在。我想这意味着它是从源代码处安装的?升级到综合安装后,现有的设置/配置/存储等是否存在任何问题?这是一个活生生的环境,如果可以避免的话,我们不希望有任何事情以这种方式被破坏。感谢您的详细回复。听起来我有点头疼,尤其是因为我们的GitLab实例正在运行MySQL。我希望数据库不用动。这是因为omnibus只对PostgreSQL有效吗?@DexterJ。你可以使用mysql,但只有当你有enterprice的时候,我必须说它并不难转换,文档很清晰,从mysql到postgresql也很容易转换。我花了大约20分钟来修好它。我建议你在你的本地机器上试用一下,看看是否能正常工作。你可以从gitlab it self那里得到报价。我相信他们能帮你,但我不知道价格是多少。
sudo cp 1393513186_gitlab_backup.tar /var/opt/gitlab/backups/
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
# Verify
sudo gitlab-ctl status
sudo gitlab-rake gitlab:backup:restore BACKUP=1393513186
sudo gitlab-ctl start
sudo gitlab-rake gitlab:check SANITIZE=true