Как отладить неудачную подпись образа докера с помощью реестра / нотариуса Docker Hub?
С сегодняшнего дня я не могу отправить новые подписанные изображения в частный репозиторий Docker Hub из-за сбоя подписи изображений. У меня включено доверие к Docker. Я не знаю каких-либо существенных изменений в моей среде, которые могли бы повлиять на это, за исключением обычной установки последних обновлений безопасности в Ubuntu пару дней назад. Но после этих обновлений работала печать подписанных изображений.
Мой вопрос: как отладить проблемы, связанные с подписанием? Там, кажется, не так много доступно, прибегая к помощи гугл или утка.
Я пытался запустить нотариус CLI, но это, похоже, не сильно помогло мне. Различные параметры различных команд не очень хорошо документированы.
Среда:
- ОС: Ubuntu 18.04.1 LTS
- Docker версия 18.06.1-ce, сборка e68fc7a
соответствующие переменные среды:
DOCKER_CONTENT_TRUST = 1 DOCKER_CONTENT_TRUST_REPOSITORY_PASSPHRASE = [нераскрытый] DOCKER_CONTENT_TRUST_ROOT_PASSPHRASE=[нераскрытый]
Ошибка команды:
docker push xyz/abc:def
Пример вывода (обфускация из нерелевантных частей):
user@machine:~$ source .docker-signing-credentials
user@machine:~$ export DOCKER_CONTENT_TRUST=1
user@machine:~$ docker push myorg/myproject:myimage_v1.38.0
The push refers to repository [docker.io/myorg/myproject]
c72506834af4: Layer already exists
043ae531d76e: Layer already exists
... 8< ... snip ... 8< ...
af840f32f0a2: Layer already exists
8decd5535924: Layer already exists
myimage_v1.38.0: digest: sha256:baa3e1148e0100df8cbb0aab46200be2bdf600d7802d7cddb3a23c12053af82d size: 8883
Signing and pushing trust metadata
failed to sign docker.io/myorg/myproject:myimage_v1.38.0: An error occurred during validation: rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure
Когда я сбрасываю DOCKER_CONTENT_TRUST, нет проблем с нажатием на изображения.
2 ответа
Основной причиной была проблема снижения производительности в нотариальном центре Docker Hub. Смотрите разрешение поддержки Docker.
Существует проблема, открытая с таким же точным описанием в:
https://github.com/docker/hub-feedback/issues/1646
это может быть хорошей идеей присоединиться к этой проблеме.