Gitlab CI生成失败Gitlab-runner-prebuild.tar.xz:没有这样的文件或目录

Gitlab CI生成失败Gitlab-runner-prebuild.tar.xz:没有这样的文件或目录,gitlab,gitlab-ci,gitlab-ci-runner,Gitlab,Gitlab Ci,Gitlab Ci Runner,我刚刚在我的开发机器(Ubuntu 17.10)上安装了Gitlab Runner进行测试。 当我跑步时,我得到: $: sudo gitlab-runner exec docker test Running with gitlab-ci-multi-runner dev (1.4.2) Using Docker executor with image php:5.6 ... ERROR: Build failed (system failure): open /

我刚刚在我的开发机器(Ubuntu 17.10)上安装了Gitlab Runner进行测试。 当我跑步时,我得到:

$: sudo gitlab-runner exec docker test       
   Running with gitlab-ci-multi-runner dev (1.4.2)
   Using Docker executor with image php:5.6 ...
   ERROR: Build failed (system failure): open /var/lib/gitlab-runner/gitlab-runner-prebuilt.tar.xz: no such file or directory
   FATAL: open /var/lib/gitlab-runner/gitlab-runner-prebuilt.tar.xz: no such file or directory 
.gitlab-ci.yml文件:

image: php:5.6

before_script:
  - php -v

stages:
  - test

test:
  script:
  - php -v
当前安装过程:

sudo apt-get install gitlab-runner
输出:

...
Configuring gitlab-ci-multi-runner (1.4.2+dfsg-1) ...
I: generating GitLab Runner Docker image. This may take a while...
E: No mirror specified and no default available
W: please run 'sudo /usr/lib/gitlab-runner/mk-prebuilt-images.sh' to generate Docker image.
...
所以我做了:

$: sudo /usr/lib/gitlab-runner/mk-prebuilt-images.sh
   I: generating GitLab Runner Docker image. This may take a while...
   E: No mirror specified and no default available

今天也有同样的问题。结果发现
usr/lib/gitlab runner/mk预构建映像中的
cdebootstrap
命令导致此错误消息:

cdebootstrap \
     --flavour=minimal \
     --exclude="dmsetup,e2fsprogs,init,systemd-sysv,systemd,udev" \
     --include="bash,ca-certificates,git,netcat-traditional" \
     stable ./debian-minbase
将最后一行更改为:

     stable ./debian-minbase https://deb.debian.org/debian/ 

脚本现在应该可以继续运行,不会出现任何错误。可以找到有关debootstrap的更多信息。

您可以尝试使用此命令解决问题:

$ sudo find / -name "mk-prebuilt-images.sh"
最有可能的结果是

/usr/lib/gitlab-runner/mk-prebuilt-images.sh

作为解决方案,可以使用GitLab Runner docker image。我发现这个方法是最好的


更多信息在官方文档中

我在ubuntu 18.04上遇到了类似的问题,这是因为我不小心安装了本地gitlab runner软件包,该软件包的版本是10.5(而不是12.2.0)。
gitlab runner中提供了对此的修复

我只需手动设置包的源代码,方法是添加一个包含以下内容的固定配置文件:


cat当前接受的答案(编辑
mk prebuilded images.sh
script)对我不起作用,但我发现如何针对我的案例修复它:

我在执行apt get install gitlab runner时出错,并检查了我的版本:

$ gitlab-runner -v
Version:      10.5.0
这不是最新版本,我希望是12版

所以我找到了这个安装指南:

本指南要求添加最新的存储库:

# For Debian/Ubuntu/Mint
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash

# For RHEL/CentOS/Fedora
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash
然后安装它:

apt-get update
apt-get install gitlab-runner
现在我有:

$ gitlab-runner -v
Version:      12.3.0

我可以在本地运行作业。

我在LinuxMint19.3上遇到了同样的问题。即使在从gitlab.com获取软件包时,我仍然坚持使用10.5版

deb https://packages.gitlab.com/runner/gitlab-runner/linuxmint/ tricia main
deb-src https://packages.gitlab.com/runner/gitlab-runner/linuxmint/ tricia main
我退回去获取.deb包,并手动安装了它(如下所示)


它工作得非常完美。

我很惊讶一年多后的今天,我昨天在18.04安装了gitlab runner,现在仍然是我修复它的方式……这里一样,以前没有问题,我更新到18.04,问题出现了,编辑这一行修复了您将
http
而不是
https
URL放在那里的任何特殊原因?@us2012很好!不过,我没有使用https进行检查。如果您可以确认它可以与https一起使用,我将编辑答案以使用此协议。解决方法是:在12.6.0中,安装后还需要手动创建目录'sudo mkdir/var/lib/gitlab runner',以这种方式安装13.8.0并立即运行
curl -LJO https://gitlab-runner-downloads.s3.amazonaws.com/latest/deb/gitlab-runner_amd64.deb
sudo dpkg -i ./gitlab-runner_amd64.deb