在 gentoo 上安装 gitlab

Posted

技术标签:

【中文标题】在 gentoo 上安装 gitlab【英文标题】:Installing gitlab on gentoo 【发布时间】:2013-10-16 00:07:39 【问题描述】:

我正在尝试使用以下非官方指南在我的 gentoo 服务器上安装 gitlab:https://github.com/cvut/gentoo-overlay/wiki/Installation-guide-for-GitLab-6.x

我遇到了两个问题:

    如果我切换到教程 ruby​​20 中的推荐(使用 eselect),那么我根本无法安装该软件包(我创建了问题,请参见此处:https://github.com/cvut/gentoo-overlay/issues/6)。看起来 dev-ruby/bundler 没有 ruby​​_targets_ruby20 标志

    如果我切换到 ruby​​19 一切都很好,直到我运行

    emerge --config "=www-apps/gitlabhq-6.0.2-r1"

当我出于某种原因运行此命令时,ebuild 脚本尝试使用 ruby​​ 20 而不是 ruby​​19(我创建了问题,请在此处查看:https://github.com/cvut/gentoo-overlay/issues/5)

【问题讨论】:

【参考方案1】:

我对 Ruby on Gentoo(迄今为止我最喜欢的发行版)的总体体验主要是挫败感之一。几乎每次系统更新(通过emerge -auDN --with-bdeps=y @world)由于冲突而失败时,通常是因为 Ruby 包和依赖项冲突。此外,GitLab 本身的运行环境也相当复杂。

我运行了几个 GitLab 服务器,并且我使用 GitLab 提供的 Docker 映像来执行此操作,这非常轻松。

升级就像重新拉动gitlab镜像的latest标签一样简单。这是我运行的 docker 命令:

docker pull gitlab/gitlab-ce:latest
docker run --detach \
           --hostname localhost \
           --publish 0.0.0.0:7080:80 --publish 0.0.0.0:7022:22 \
           --name gitlab \
           --restart always \
           --volume /srv/gitlab/config:/etc/gitlab \
           --volume /srv/gitlab/logs:/var/log/gitlab \
           --volume /srv/gitlab/data:/var/opt/gitlab \
           gitlab/gitlab-ce:latest

然后,任务减少到在 Gentoo 上安装 Docker,这比 Ruby 容易得多。

在我使用 docker 运行生产 GitLab 服务器的那一年,我遇到了两个问题,我都使用单个命令 docker restart gitlab 解决了这两个问题。这就是 docker 制造的目的。我建议利用它。

【讨论】:

【参考方案2】:

我找到了解决此问题的方法。我暂时将 /usr/bin/ruby19 移动到 /usr/bin/ruby20。配置很顺利。然后我将 /usr/bin/ruby20 回滚到原始版本。

# cp /usr/bin/ruby20 /usr/bin/ruby20.bak
# cp /usr/bin/ruby19 /usr/bin/ruby20
# emerge --config "=www-apps/gitlabhq-6.0.2-r1"
# rm /usr/bin/ruby20
# cp /usr/bin/ruby20.bak /usr/bin/ruby20

【讨论】:

以上是关于在 gentoo 上安装 gitlab的主要内容,如果未能解决你的问题,请参考以下文章

gentoo geoip安装[关闭]

gentoo linux安装过程中出现的错误及解决方案

Gentoo虚拟机安装教程

有关Gentoo Linux的安装

Gentoo安装总结

VirtualBox 安装 Gentoo 小记