4

我有 GitLab、GitLab-CI 并gitlab-ci-multi-runner在不同的机器上运行。我已经使用 docker 和 ruby​​:2.1 图像成功添加了一个跑步者,详见https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/docs/install/linux-repository。 MD

我接下来想做的是为最小的 Ubuntu 12.04、14.04 配置运行器。不知道 docker,我想我会尝试使用ubuntu:14.04ubuntu:12.04图像。但是,当启动并尝试克隆我的项目存储库时,他们抱怨git找不到。然后我假设使用这些图像,没有安装 git。所以我的问题是:

  • Docker 映像中需要哪些工具才能“开箱即用”地使用gitlab-ci-multi-runner
  • 是否有一组图像已经可用于各种操作系统,其中已经包含这些
  • 我真的应该为此目的创建自己的 docker 映像吗?
4

1 回答 1

0

包含用于构建软件的常用软件的流行基础镜像是(基于)buildpack-deps https://hub.docker.com/r/library/buildpack-deps/(例如openjdk基于此)

在您的情况下,您可以指定FROM buildpack-deps:stretch-scm哪个基于 Debian Stretch 并包括源代码管理 (SCM) 工具,如 git。

我想你可以创建一个使用这些图像作为默认图像的 Gitlab Runner。但我认为您应该始终在.gitlab-ci.yml-file中指定所需的图像。

在创建自己的 Docker 映像时,我总是犹豫不决,因为有很多可用的。对于通常不适合您的应用程序的特定用例,仍然有许多特定的用例由一个人维护(或者最好不维护)。最好的选择是选择一个基本图像,并且只添加用于自定义的次要RUN命令。

于 2017-08-30T13:32:54.940 回答