在ubuntu(12.04LTS)上安装gitlab ci(继续集成)时,我在步骤5(安装应用程序)中收到以下错误
来自:https://github.com/gitlabhq/gitlab-ci/blob/master/doc/installation.md
root@s2:~# cd /home/gitlab_ci/gitlab-ci/
root@s2:/home/gitlab_ci/gitlab-ci# sudo -u gitlab_ci -H gem install bundler
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /usr/local/lib/ruby/gems/1.9.1 directory.
看来这些宝石尝试安装在/ home / gitlab_ci之外,确实会因用户gitlab_ci而失败
我的问题是 - 这些说明是错的吗? - 或 - 我是一个边缘案件。 而且当然如何安全地解决这个问题,只是以root身份运行命令可能会让我以后遇到更多麻烦......
额外的信息,Ruby最初是为gitlab本身安装的,并且工作正常。
答案 0 :(得分:0)
考虑到gitlab installation step 2建议重新编译ruby,我通常使用--prefix=/home/gitlab/ruby1.9.3
参数对其进行编译,以便使用ruby,在该ruby中我有完全的权限来编写/添加我想要的任何gem而不使用sudo
。
因此gitlab_ci帐户使用的$PATH
应包含/home/gitlab/ruby1.9.3/bin
,该帐户安装的任何gem都将进入本地编译的ruby。
如果两个帐户都属于同一个帐户,则他们都应该能够写入/home/gitlab/ruby1.9.3/lib/ruby/gems/1.9.1
。