Я пытаюсь вытащить контейнер докеров из нашего частного реестра контейнеров GCP на обычном экземпляре виртуальной машины (т.е. ubuntu-1904
), работающем в Google Cloud, но получаю следующую ошибку:
user@test ~ $ sudo docker pull example.io/docker-dev/name:v01
Error response from daemon: unauthorized: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication
Я выполнил эти инструкции, т.е. запустил команду gcloud auth configure-docker
, которая выдает сообщение об успехе.
Однако при повторном запуске команды docker pull
я получаю ту же ошибку.
Пара дополнительных тестов, которые могут помочь получить обратную связь:
- Если я извлекаю из другого реестра, он работает (например,
docker run hello-world
извлекает и запускает образhello-world
) - Я протестировал ту же команду (
docker pull example.io/docker-dev/name:v01
) на моем локальном компьютере (Mac) вместо экземпляра vm и отлично работает. - Я также создал экземпляры vm и включил опцию «Развернуть образ контейнера в этом экземпляре виртуальной машины», указав адрес контейнера (
example.io/docker-dev/name:v01
), и это тоже работает. Однако я не хочу использовать этот параметр, потому что он автоматически выбирает загрузочный диск «Оптимизированный для контейнера», который я предпочитаю не использовать из-за ограничений
Вопрос: почему я не могу извлечь образы докеров из моего частного реестра контейнеров на виртуальной машине Ubuntu o Debian, хотя докер, кажется, работает очень хорошо, извлекая образы из других репозиториев (докер-хаб)?