2

我已按照说明安装 GitLab 6.0.0: https ://github.com/gitlabhq/gitlabhq/blob/6-0-stable/doc/install/installation.md

当我到达“检查应用程序状态”并运行时

sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production

我看到“捆绑器版本:未知”:

System information
System:         Ubuntu 12.04
Current User:   git
Using RVM:      no
Ruby Version:   1.9.3p0
Gem Version:    1.8.11
Bundler Version:unknown
Rake Version:   10.1.0

GitLab information
Version:        6.0.0
Revision:       5246d63
Directory:      /home/git/gitlab
DB Adapter:     mysql2
URL:            http://my-server
HTTP Clone URL: http://my-server/some-project.git
SSH Clone URL:  git@my-server:some-project.git
Using LDAP:     no
Using Omniauth: no

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

bundle --version并且sudo -u git -H bundle --version都显示1.3.5,所以我不确定为什么上面的命令显示“未知”...

...所以我继续运行sudo service gitlab start并显示“GitLab 服务已启动”,但似乎并非如此,因为sudo service gitlab status“GitLab 服务未运行”并且/home/git/gitlab/tmp/pids为空但具有权限:用户和组的“drwxr-xr-x” “混蛋”。

axilleas设法通过创建目录来解决这个问题,但这不是我的问题。

...我可能不应该指望它从这里开始工作,但我还是继续,但现在它在抱怨sidekiq

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.0 ? ... OK (1.7.0)
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
post-receive hook up-to-date? ... yes
post-receive hooks in repos are links: ... can't check, you have no projects

Checking GitLab Shell ... Finished

Checking Sidekiq ...

Running? ... no
  Try fixing it:
  sudo -u git -H bundle exec rake sidekiq:start RAILS_ENV=production
  For more information see:
  doc/install/installation.md in section "Install Init Script"
  see log/sidekiq.log for possible errors
  Please fix the error above and rerun the checks.

Checking Sidekiq ... Finished

Checking GitLab ...

Database config exists? ... yes
Database is SQLite ... no
All migrations up? ... /home/git/gitlab/vendor/bundle/ruby/1.9.1/bin/rake: No such file or directory - bundle exec rake db:migrate:status
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? ... yes
Projects have satellites? ... can't check, you have no projects
Redis version >= 2.0.0? ... yes
Your git bin path is "/usr/bin/git"
Git version >= 1.7.10 ? ... yes (1.8.3)

Checking GitLab ... Finished

adril遇到过这个问题(但他的捆绑器工作正常)。他听从了建议,但由于某种原因,他的日志文件比我的信息多得多——我的只有一行:

nohup:无法运行命令“bundle”:没有这样的文件或目录

...也许它与“没有这样的文件或目录 - bundle exec rake db:migrate:status ”行有关?

不,我认为可以忽略它吗?- 这工作正常:sudo -u git -H bundle exec rake db:migrate:status RAILS_ENV=production

编辑:当我跑步时,echo $PATH我看到/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games.

我在 lib/tasks/gitlab/info.rake 添加了一些日志记录,结果发现 gitlab 使用了不同的路径:

/home/git/gitlab/vendor/bundle/ruby/1.9.1/bin:/usr/bin:/bin:/usr/sbin:/sbin

捆绑安装在/usr/local/bin

4

4 回答 4

2

我不确定为什么存在问题,也不确定如何在代码中解决它,但有一个简单的解决方法:

sudo ln -s /usr/local/bin/bundle /usr/bin/bundle
于 2013-09-04T02:21:23.503 回答
0

visudo
默认值secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/rvm/gems/ruby-1.9.3-p392/bin:/usr/local/rvm/gems/ruby- 1.9.3-p392@global/bin:/usr/local/rvm/rubies/ruby-1.9.3-p392/bin

于 2013-10-24T09:05:37.033 回答
0

您可以尝试在 git 用户中运行失败的命令吗?我是说:

su
su - git
cd gitlab/
run commands..

也许 sudo 正在改变你的路径,就像这里描述的那样。所以如果我是你,我会尝试再次安装 bundler,然后检查上面的答案(如果是你的情况)。

于 2013-08-23T14:40:35.103 回答
0

我知道这是旧的,但我要添加一些信息,因为我有一个在 FreeBSD 上运行的 gitlab,我不得不更改一些东西。也许这对任何寻找解决方案的人都有用,就像我一样。

对我来说 Sidekiq 问题是由 check.rake 中的错误命令引起的。该脚本使用 ps ux,如果输出太长,它将修剪输出。脚本(在我当前的版本中)正在通过正则表达式检查它,我的 ps 将进程显示为“ruby20:sidekiq 2.xx”,ps ux 输出在 sidekiq 周围被剪切。这也将在 Linux 上触发。解决方案 - 在 ps 中添加“w”参数,例如:

 Gitlab::Popen.popen(%W(ps wux)

如果您将它安装在不同的目录中,初始化脚本检查将失败,例如,我将它作为/usr/local/etc/rc.d/gitlab。有script_path综合和非综合的条目。

于 2015-02-25T21:35:32.553 回答