Как создать манифест докера с использованием Cirrus-CI?
Я пытаюсь создать многоархивный манифест с Cirrus CI, поэтому мне нужно включить экспериментальную опцию докера
Но экспериментальный вариант докера не учитывается.
В.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
Это ограничение на dockerd доступно в Cirrus CI, или я сделал неправильную конфигурацию?
1 ответ
Решение
Docker cli, похоже, изменил способ включения экспериментальной функции cli
DOCKER_CLI_EXPERIMENTAL Включить экспериментальные функции для Cli (например, включен или отключен)
Добавление в.cirrusci.yml:
env:
DOCKER_CLI_EXPERIMENTAL: enabled