Устранение ошибки: Error response from daemon: manifest for [docker-repo] not found

by Anton Chernousov aka GITA-DEV


Опубликовано: 25 Июл 2018 (последние правки 2 месяца, 3 недели)


Устранение ошибки: Error response from daemon: manifest for [docker-repo] not found

На ряде Docker репозитариев на DockerHub вы можете получить ошибку "Error response from daemon: manifest for [docker-repo] not found" и это совершенно не означает что этот репозитарий "битый", просто у него скорее всего нет тэга latest. В общем дело это поправимое и сейчас я все вам расскажу и покажу.

Когда вы выполняете команду (она кстати в этом виде и указана на DockerHub):

# docker pull bpmonline/gs-web-api

То она вам намекает, что она попытается скачать образ с меткой latest:

Using default tag: latest

В идеале подразумевается, что этот тэг должен присутствовать, но на ряде репозитариев это не так (например у bpmonline это я и нашел). Если эта метка не установлена, то вы получите ошибку:

Error response from daemon: manifest for bpmonline/gs-web-api:latest not found

Следовательно нам надо определиться какие вообще метки есть у этого контейнера, для этого можно выполнить вот такую замысловатую команду:

# curl -sS 'https://registry.hub.docker.com/v2/repositories/bpmonline/gs-web-api/tags/' | jq '."results"[]["name"]' | sort

И естественно, что bpmonline/gs-web-api надо заменить на название вашего репозитария и в итоге вы получите список меток:

"1.0" 
"1.1" 
"1.2" 
"1.2.1" 
"test"

Для работы этого shell-скрипта вам необходимо установить утилиту jq при помощи команды:

# aptitude install jq

Скачать образ докера мы можем принудительно указав требуемую версию/метку:

# docker pull bpmonline/gs-web-api:1.2.1

Есть вопросы?
Спрашивайте и я обязательно вам отвечу!

* Поля обязательные для заполнения .

Блог это некоммерческий проект! Если вам понравился мой блог и то что я пишу помогло вам на практике, то можете сказать спасибо материально.