Gitlab-shell在SLES11.2上安装GitLab6的问题

时间:2014-09-01 12:21:49

标签: git apache shell gitlab suse

我尝试按照本指南在 SUSE Enterprise 11.2 上安装 GitLab6 https://github.com/n3rdbeere/Installation-guide-for-GitLab6-on-SLES11/blob/master/README.md

安装已在已运行apache2 http服务器的专用本地服务器上执行,因此我没有安装nginx服务器(从上面链接指南的末尾开始)。此外,由于公司的原因,我不得不在/ appl / git /而不是/ home / git /上安装所有gitlab内容(显然,我已经创建了链接指南中所写的git用户)。

我的问题是虽然gitlab-shell似乎已正确安装,但gitlab检查失败了。如果我以git用户身份运行,那就一步一步走:

./<gitlab-shell-dir>/bin/check

我明白了:

Check GitLab API access: OK
Check directories and files:
        /appl/git/repositories: OK
        /appl/git/.ssh/authorized_keys: OK

如果我从:

以git用户身份运行
sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production

我明白了:

System information
System:         SUSE LINUX 11
Current User:   git
Using RVM:      no
Ruby Version:   2.0.0p247
Gem Version:    2.4.1
Bundler Version:1.7.2
Rake Version:   10.1.0

GitLab information
Version:        6.1.0
Revision:       a129bce
Directory:      /appl/git/gitlab
DB Adapter:     mysql2
URL:            http://xxx.xxx.xxx.xxx:8084
HTTP Clone URL: http://xxx.xxx.xxx.xxx:8084/some-project.git
SSH Clone URL:  git@xxx.xxx.xxx.xxx:some-project.git
Using LDAP:     no
Using Omniauth: no

GitLab Shell
Version:        1.7.1
Repositories:   /appl/git/repositories/
Hooks:          /appl/git/gitlab-shell/hooks/
Git:            /usr/bin/git

出于隐私原因,我显然已经取代了我的私人主机。正如您所看到的,我已将我的服务配置为运行(和独角兽监听)端口8084而不是默认的8080.

,当我从:

作为git用户运行时
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production

我明白了:

Checking Environment ...

Git configured for git user? ... yes
Has python2? ... yes
python2 is supported version? ... yes

Checking Environment ... Finished

Checking GitLab Shell ...

GitLab Shell version >= 1.7.1 ? ... FAIL. Please update gitlab-shell to 1.7.1 from Unknown
Repo base directory exists? ... yes
Repo base directory is a symlink? ... no
Repo base owned by git:git? ... yes
Repo base access is drwxrws---? ... yes
update hook up-to-date? ... yes
update hooks in repos are links: ...
Administrator / Test ... repository is empty

Checking GitLab Shell ... Finished

Checking Sidekiq ...

Running? ... yes

Checking Sidekiq ... Finished

Checking GitLab ...

Database config exists? ... yes
Database is SQLite ... no
All migrations up? ... yes
GitLab config exists? ... yes
GitLab config outdated? ... no
Log directory writable? ... yes
Tmp directory writable? ... yes
Init script exists? ... yes
Init script up-to-date? ... no
  Try fixing it:
  Redownload the init script
  For more information see:
  doc/install/installation.md in section "Install Init Script"
  Please fix the error above and rerun the checks.
projects have namespace: ...
Administrator / Test ... yes
Projects have satellites? ...
Administrator / Test ... can't create, repository is empty
Redis version >= 2.0.0? ... yes
Your git bin path is "/usr/bin/git"
Git version >= 1.7.10 ? ... yes (1.7.12)

Checking GitLab ... Finished

所谓的“管理员/测试”是我在Gitlab UI中创建的测试项目:实际上,虽然上次检查中的错误,我能够远程访问Gitlab服务器,创建用户,项目等等,但是我无法推送任何东西。我认为问题取决于gitlab-shell失败的检查,但我无法找出原因!

任何帮助将不胜感激。非常感谢你!

2 个答案:

答案 0 :(得分:1)

我可以确认gitlab 6.2在SLES 11 SP 3上运行。你需要编辑init-Script,因为它会产生一些ubuntu风格的假设。否则REDIS服务器无法正常启动。

另外请确保您拥有Open Build Service的最新版本的git - SLES附带的版本太旧了。

答案 1 :(得分:0)

我现在多次在openSUSE 12.2 / 12.3上部署gitlab。 我建议尝试使用Gitlab 6.9.2和gitlab shell 1.9.3