I am trying to push a docker image to Google's container registry but keep getting a error about Docker login having failed. I run
gcloud docker -- push gcr.io/<my-project-id>/test-image
I get back
ERROR: Docker CLI operation failed:
Error response from daemon: login attempt to
https://appengine.gcr.io/v2/ failed with status: 404 Not Found
ERROR: (gcloud.docker) Docker login failed.
Other gcloud operations that don't go through docker work. I can for example create a cluster via gcloud container clusters create my-cluster
.
I did play around with a local registry today, not sure if that might have broken things.
Thanks!
Вам просто нужно отключить сохранение учетных данных докера в связке ключей macOS в настройках Docker для Mac.
Редактировать : Кажется, мой подход работает только временно . Спасибо @ hamx0r за размещение снимка экрана с описанием того, как применить долгосрочное исправление.
Отключите сохранение учетных данных докеров в связке ключей mac os x, удалив эту запись из вашего ~ / .docker / config.json
файл.
"credsStore": "osxkeychain",
В моем случае у меня не было дополнительной конфигурации (я не вошел в систему), поэтому я просто очистил весь файл.
У меня была такая же проблема. Я использовал Docker для Mac из канала Edge (см. Разницу https://docs.docker.com/docker-for-mac/install/ ). После перехода на стабильную версию (ОСТОРОЖНО, вы потеряете все свои изображения, контейнеры, тома, конфигурации), я могу снова отправить изображения в реестр контейнеров Google.
В Google Cloud SDK
v164.0.0
должно быть доступно обновление, чтобы исправить эту проблему, извините за проблему.
Теперь, вероятно, будет хорошо время рекламировать новейший и самый популярный метод аутентификации в городе:
docker-credential-gcr
Правка: v164.0.0
выпущена :
Критические изменения
appengine.gcr.io
из список репозиториев по умолчанию, для которых gcloud docker
аутентифицируется.