如何使用cirrus-ci创建docker multiarch清单?

时间:2019-07-07 14:33:59

标签: docker multiarch cirrus-ci

我正在尝试使用Cirrus CI构建多清单清单,因此我需要启用docker experimental option
但是docker的实验性选择没有考虑。

在.cirrusci.yml中,我有类似的内容:

publish_docker_builder:
  script: | 
    mkdir -p $HOME/.docker
    echo '{ "experimental": "enabled" }' > $HOME/.docker/config.json
    docker info
    docker login --username=$DOCKERHUB_USER --password=$DOCKERHUB_PASS 
    docker manifest create --amend $CIRRUS_REPO_FULL_NAME:latest $CIRRUS_REPO_FULL_NAME:linux  $CIRRUS_REPO_FULL_NAME:rpi  $CIRRUS_REPO_FULL_NAME:windows

但是执行报告:

mkdir -p $HOME/.docker
echo '{ "experimental": "enabled" }' > $HOME/.docker/config.json
....
Labels:
Experimental: false
....
docker manifest create is only supported on a Docker cli with experimental cli features enabled

完整日志为https://api.cirrus-ci.com/v1/task/6577836603736064/logs/main.log

这是Cirrus CI中对dockerd的限制吗,还是我做了一些错误的配置?

1 个答案:

答案 0 :(得分:1)

docker cli似乎已经改变了启用实验性功能cli

的方式
  

DOCKER_CLI_EXPERIMENTAL启用cli的实验功能(例如   启用或禁用)

添加到.cirrusci.yml中:

  env:
    DOCKER_CLI_EXPERIMENTAL: enabled