在 Ubuntu 16.04(xenial)上安装 gitlab-ce 的问题

在 Ubuntu 16.04(xenial)上安装 gitlab-ce 的问题

我一直尝试从 Ubuntu 16.04(GNU/Linux 4.6.5-x86_64-linode71 x86_64)的 Omnibus 软件包中安装 gitlab-ce,但完全陷入了困境。

第 #1 期

所有文档都说要运行该命令sudo apt-get install gitlab-ce,但我总是得到一个无法找到软件包 gitlab-ce错误。

执行以下命令sudo apt search gitlab,显示有一个名为GitLab所以我假设文档是错误的,我应该安装它。

第 #2 期

安装正常运行,直到进行 nginx 设置时失败并出现以下错误:

Creating config file /etc/nginx/sites-available/gitlab.mydomain.net with new version
cp: cannot create regular file '/etc/nginx/sites-available/gitlab.mydomain.net': No such file or directory
dpkg: error processing package gitlab (--configure):
 subprocess installed post-installation script returned error exit status 1 

我没有对我的安装做任何特别的事情。

有人可以给我一些提示吗?


更新 1

我不知道有库存GitLabUbuntu 中的包,这样至少可以解释我的问题的一部分。

只是为了澄清一下,我确实浏览了关于页面上的完整说明,因此我将 gitlab-ce repo 添加到了我的 apt 源中:

-rw-r--r-- 1 root root 261 Aug 31 16:03 gitlab_gitlab-ce.list

以上内容

# this file was generated by packages.gitlab.com for
# the repository at https://packages.gitlab.com/gitlab/gitlab-ce

deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ xenial main
deb-src https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ xenial main

当我执行以下操作时,我还看到引用了 gitlab 源apt-get update

Hit:10 https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu xenial InRelease

我已经跑sudo apt-get updategitlab-ce软件包不存在。我想知道是不是我的系统与软件包不兼容?


更新 2

看起来这是一个系统架构问题。

尽管运行uname -a显示Linux li424-65 4.6.5-x86_64-linode71,但如果我尝试安装.deb手动。

package architecture (amd64) does not match system (i386)

这是一个 Linode VM,所以我敢打赌它与此有关。

答案1

有多种方法可以安装 gitlab-ce[1]。看来您已经跳过了其中两种。特别是,您尝试遵循 Omnibus 说明(尽管缺少一两个步骤),同时使用 gitlab 的常规 Ubuntu 软件包(GL 官方不鼓励这样做)。

  1. 必须将 Omnibus 软件包存储库添加到您的系统中,否则 gitlab-ce 软件包将不可用。有一种脚本方式可以执行此操作,对于那些想知道系统中发生了什么变化的人来说,还有一种更手动的方式。该过程记录在 Omnibus 安装指南的第二步中:https://about.gitlab.com/downloads/#ubuntu1604

(在尝试执行 apt-get 之前,您可能错过了 curl 部分)。

  1. 看看解决问题 1 是否能解决您的其他问题。

[1] 如果你感兴趣的话,可以了解一下不同方法的一些细节https://about.gitlab.com/installation/

答案2

在运行之前,请确保已将 gitlabs 存储库添加到系统中
sudo apt-get install gitlab-ce

您可以手动将存储库添加到系统中,也可以使用 gitlabs 网页上的脚本添加它。https://about.gitlab.com/downloads/#ubuntu1604,请参阅第 2 部分。

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

gitlab-ce 不在任何 ubuntu 主存储库中。

答案3

看起来这是一个系统架构问题。

尽管运行 uname -a 显示 Linux li424-65 4.6.5-x86_64-linode71,但如果我尝试手动安装 .deb,我会收到以下错误。

package architecture (amd64) does not match system (i386)

事实证明,虽然我运行的是 64 位内核,但这个 Linode 最初是作为 32 位系统创建的,因此所有的用户空间和库仍然是 32 位的。

由于 Gitlab-ce 软件包仅为 64 位,因此无法安装。

答案4

你已经安装了 nginx 吗?今天早上我尝试安装某些东西时也遇到了类似的错误,这就是问题所在。至于获取 gitlab 包,我不确定。

我也想要一个内部托管的 git 解决方案,所以我转向了交钥匙我通常不会这样做,但是它使启动和运行变得非常快速和简单,只花了我大约 10 分钟,并且在 20 分钟内完成。我建议您查看它,它基于 Debian 并且具有其他一些简洁的功能。(以及一些烦人的功能)

相关内容