我有一个 .gitlab-ci.yml
文件,其中包含以下内容:
image: docker:latest
services:
- docker:dind
before_script:
- docker info
- docker-compose --version
buildJob:
stage: build
tags:
- docker
script:
- docker-compose build
但在 ci-log
我收到消息:
$ docker-compose --version
/bin/sh: eval: line 46: docker-compose: not found
我究竟做错了什么?
原文由 jonua 发布,翻译遵循 CC BY-SA 4.0 许可协议
编辑 我添加了另一个答案,为支持 docker-compose 的 .gitlab-ci.yml 配置提供了一个最小示例。
docker-compose
可以作为 Python 包安装,该包不随您的图像一起提供。您选择的图像甚至没有提供 Python 的安装:寻找 Python 会给出一个空的结果。所以你必须选择一个不同的图像,它适合你的需要,最好安装 docker-compose 或者你自己创建一个。
您选择的 docker 映像使用 Alpine Linux。如果您不熟悉 Alpine Linux,您可以将其用作您自己的镜像的基础,或者先尝试其他镜像。
我遇到了同样的问题,并在公共 GitHub 存储库中创建了一个 Dockerfile,并将其与我的 Docker Hub 帐户连接,并选择了一个自动构建来在每次推送到 GitHub 存储库时构建我的图像。然后,您可以使用 GitLab CI 轻松访问自己的图像。