#docker #jenkins #openshift #artifactory
#docker #дженкинс #openshift #артефакт
Вопрос:
Справочная информация: Я запускаю сборку Openshift с помощью плагина Jenkins в Openshift, который затем передается в Artifactory. Таким образом, версия схемы изображения 1 устарела для отправки в Artifacrory. Я предполагаю, что некоторые узлы периодически загружают версию схемы изображения 1 в сборку. Версия среды выполнения контейнера: docker://1.13.1 oc v3.10.0 0c4577e-1 kubernetes v1.10.0 b81c8f8
Спросите: Хотели бы понять, что вызывает эти теги в сборке? существует ли контроллер агента сборки, который отвечает за пометку версии схемы изображения? есть ли статья или документ, который я мог бы прочитать, чтобы понять это? Как устранить эту ошибку. Насколько мне известно, все узлы агента используют одни и те же версии, я предполагаю, что из всех узлов проблема связана только с одним узлом. Как и при отправке той же сборки на другие узлы, она завершается с версией схемы 2. Однако, опять же, версии узлов агента похожи, не уверен, с чего начать.
Сообщение об ошибке: Предупреждение о сбое 1m (x3 более 2m) kubelet, не удалось извлечь изображение «products-docker-stage.artifactory».: ошибка rpc: code = Unknown desc = Ошибка: Статус 400 попытка извлечь лицензионный модуль репозитория: «{n «ошибки»: [ {n «статус»: 400,n «сообщение»: «Неподдерживаемый запрос репозитория docker v1 для «products-docker-stage»»n } ] n}» Сбой предупреждения 1 м (x3 более 2 м) kubelet, ошибка: ErrImagePull Нормальное отключение 1 м (x3 более 2 м) kubelet, повторное извлечение изображения «products-docker-stage.artifactory.**» Задержка предупреждения 43 с (x3 более 1 м) kubelet, повторное перезапуск неудачного контейнера
Ошибка в Openshift
error: build error: Failed to push image: unauthorized: Pushing Docker images with manifest v2 schema 1 to this repository is blocked. For more information visit https://www.jfrog.com/confluence/display/RTF/Advanced Topics#AdvancedTopics-DockerManifestV2Schema1Deprecation
Комментарии:
1. Возможно ли, что ваши узлы сборки имеют локальные кэши Docker? если это так, у вас может быть локальный образ с версией схемы 1 в одном из этих кэшей
2. Я так не думаю, поскольку сборка происходит через конвейер Jenkins. Но просто чтобы подтвердить, какие места вы хотите, чтобы я посмотрел, пожалуйста. Я мог бы предоставить выходные данные в те места, которые вам требуются. Кроме того, я полагаю, что проблема с некоторой проблемой доступа к артефакту из Jenkins или Openshift, не уверен, где копать. Но это то, что я обновил и изменил, чтобы посмотреть, работает ли это. Изменено:- параметры sudo cat / etc/sysconfig/docker=’ —selinux-включен —проверка подписи = False —небезопасно-реестр myartifactiryurl.com ‘ Добавлен /etc/docker/daemon. json { «отключить устаревший реестр»: верно
3. Ошибка ====== ошибка: ошибка сборки: не удалось отправить изображение: неавторизованный: Отправка изображений Docker со схемой 1 манифеста v2 в этот репозиторий заблокирована. Для получения дополнительной информации посетите jfrog.com/confluence/display/RTF /…