Docker: Ответ на ошибку от демона: Получить https://registry-1.docker.io/v2/: Служба недоступна. IN DOCKER, MAC
У меня возникла эта проблема в моей системе Mac 10.11.6
system3:postgres saurabh-gupta2$ docker build -t postgres .
Sending build context to Docker daemon 38.91kB
Step 1/51 : FROM registry.access.redhat.com/rhel7/rhel
Get https://registry.access.redhat.com/v2/: Service Unavailable
docker run -t apline
Unable to find image 'apline:latest' locally
docker: Error response from daemon: Get https://registry-1.docker.io/v2/: Service Unavailable.
See 'docker run --help'.
Я искал решение, которое говорит, чтобы установить прокси, но я установил прокси для Wi-Fi.
https://docs.docker.com/docker-for-mac/networking/#httphttps-proxy-support
Тем не менее это не работает.
Я установил прокси для докера. Это не работает.
в настройках → прокси
Docker версия 17.12 ce
Я также хочу знать, если прокси является проблемой тогда, как я могу проверить, установлен ли он, что обходить для этого? Я на неверном пути?
редактировать
Каждый ответ помогает, так что поделитесь, как вы решаете это.
Ответы
Ответ 1
Вот несколько предложений:
- Попробуйте перезапустить службу Docker.
Проверьте ваши сетевые подключения. Например, с помощью следующих команд оболочки:
</dev/tcp/registry-1.docker.io/443 && echo Works || echo Problem
curl https://registry-1.docker.io/v2/ && echo Works || echo Problem
Проверьте свои настройки прокси-сервера (например, в /etc/default/docker
).
Если вышеперечисленное не поможет, это может быть временная проблема со службами Docker (согласно службе недоступна).
Related: GH-842 - 503 Service Unavailable at http://hub.docker.com.
У меня была эта проблема в прошлые дни, она просто работала после этого.
Вы можете поднять проблему в docker/hub-feedback
repo, проверить на форумах сообщества Docker или напрямую связаться со службой поддержки Docker Support.
Ответ 2
Для меня у меня была эта проблема, когда я впервые установил Docker и побежал
docker run hello-world
Я получил ошибку проверки подлинности, когда я побежал
$ curl https://registry-1.docker.io/v2/ && echo Works
Все, что мне нужно было сделать, это перезапустить мой MacOS, а затем снова запустить команду, она просто начала вынимать изображение, и я получил сообщение
Hello from Docker!
This message shows that your installation appears to be working correctly.
Ответ 3
Я попытался работать в Windows и получил эту проблему после обновления. Я попытался перезапустить службу докеров, а также мой компьютер, но ничего не получилось.
При запуске:
curl https://registry-1.docker.io/v2/ && echo Works
Я вернулся:
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]}
Works
В конце концов, я попробовал: https://github.com/moby/moby/issues/22635#issuecomment-284956961
Изменив фиксированный адрес на 8.8.8.8: ![enter image description here]()
Это сработало для меня! Я все еще получил несанкционированное сообщение для curl https://registry-1.docker.io/v2/
но мне удалось вытащить изображения из узла докеров.
Ответ 4
Для меня проблема была решена путем перезапуска демона Docker:
sudo systemctl restart docker
Ответ 5
Просто чтобы добавить, на случай, если кто-то еще сталкивается с этой проблемой.
На Mac я должен был выйти и снова войти в систему.
docker logout
docker login
Затем он запрашивает имя пользователя (ПРИМЕЧАНИЕ: не адрес электронной почты) и пароль. (Нужна учетная запись на https://hub.docker.com, чтобы вытащить изображения вниз)
Тогда это сработало для меня.
Ответ 6
NTML PROXY AND DOCKER
If your company is behind MS Proxy Server that using the proprietary NTLM protocol.
You need to install **Cntlm** Authentication Proxy
After this SET the proxy in
/etc/systemd/system/docker.service.d/http-proxy.conf) with the following format:
[Service]
Environment="HTTP_PROXY=http://<<IP OF CNTLM Proxy Server>>:3182"
In addition you can set in the .DockerFile
export http_proxy=http://<<IP OF CNTLM Proxy Server>>:3182
export https_proxy=http://<IP OF CNTLM Proxy Server>>:3182
export no_proxy=localhost,127.0.0.1,10.0.2.*
Followed by:
systemctl daemon-reload
systemctl restart docker
Это сработало для меня
Ответ 7
Один вариант, который работал для меня на MAC.
Нажмите на значок Docker в трее. Откройте Настройки → Прокси. Нажмите на Прокси-сервер вручную и укажите прокси-сервер веб-сервера (HTTP) и прокси-сервер защищенного веб-сервера (HTTPS) в том же формате, который мы указали в переменной env HTTPS_PROXY.
Выберите "Применить и перезагрузить".
Это сработало для меня
Ответ 8
Перезагрузка докера на моей локальной машине работала для меня!
Ответ 9
попробуйте перезагрузить демон и перезапустите сервис Docker.
~$ systemctl daemon-reload
Ответ 10
Получил это от сетевого фильтра (LuLu на macOS), блокирующего трафик в/из связанных с Docker процессов.
Ответ 11
Запустите export DOCKER_CONTENT_TRUST=0
и попробуйте снова.
Ответ 12
Это явно проблема с прокси-сервером: Docker проксирует соединения https в неправильном месте. Имейте в виду, что настройки прокси-сервера Docker могут отличаться от настроек операционной системы (и curl). Вот как мне удалось решить проблему:
Прежде всего, выясните, где вы проксируете свои запросы https для докера:
# docker info | grep Proxy
Http Proxy: http://<my.proxy.server>:8080
Https Proxy: https://<my.proxy.server>:8080
No Proxy: localhost,127.0.0.1
и дважды проверьте настройки https.
В моем случае я понял, что "прокси Https" был установлен на https://...
вместо http://...
, поэтому я исправил его в файле /etc/sysconfig/docker
(я использую RHEL7) и после перезапуска докера перезапустил:
# systemctl restart docker
переменная прокси отображается успешно обновленной:
# docker info | grep Proxy
Http Proxy: http://<my.proxy.server>:8080
Https Proxy: http://<my.proxy.server>:8080
No Proxy: localhost,127.0.0.1
и все отлично работает :-)