我有gitlab-runner
一个docker
执行人注册。当它运行时.gitlab-ci.yml
:
image: docker:latest
variables:
DOCKER_BUILDKIT: "1"
build:
stage: build
script:
# There are additional flags cut out requiring BuildKit.
- docker build .
并/var/run/docker.sock
安装,它失败了:
ERROR: docker.io/docker/dockerfile:experimental not found
------
> resolve image config for docker.io/docker/dockerfile:experimental:
------
failed to solve with frontend dockerfile.v0: failed to solve with frontend gateway.v0: docker.io/docker/dockerfile:experimental not found
当我包括
services:
- docker:dind
并.gitlab-ci.yml
删除/var/run/docker.sock
挂载(因此将守护进程更改为子容器而不是主机的),它成功了。
这是Dockerfile
:
# syntax=docker/dockerfile:experimental
...
是否与 BuildKit / 实验语法和使用主机的 docker 套接字不兼容?我让它通过使用自己的套接字与子容器一起工作dind
,但我希望通过安装套接字来成功。