Docker - Ошибка: невозможно выполнить интерактивный вход с устройства без TTY (учетная запись службы GCP) - PullRequest
0 голосов
/ 09 июля 2020

Команда docker login -u _json_key --password-stdin https://gcr.io < ~/service-account.json работает локально, но когда я пытаюсь запустить ее в среде CI, такой как Github Actions, я получаю следующую ошибку.

Ошибка: не удается выполнить интерактивный вход из устройство без телетайпа

## [ошибка] Процесс завершен с кодом выхода 1.

Ответы [ 2 ]

0 голосов
/ 10 июля 2020

Стратегия аутентификации oauth2accesstoken у меня сработала.

  1. Войдите в gcloud cli, используя сервисный аккаунт

gcloud auth activate-service-account --key-file=${HOME}/service-account.json

Распечатайте токен доступа и используйте его для входа в систему docker

gcloud auth print-access-token | docker login -u oauth2accesstoken --password-stdin https://gcr.io

0 голосов
/ 09 июля 2020

Похоже, вы выдаете себя за учетную запись службы с токеном аутентификации для входа в систему docker. Вы можете получить токен доступа для учетной записи службы. Поскольку токен недолговечен, запросите его менее чем за час, прежде чем использовать его для подключения к Реестру контейнеров.

Действия задокументированы здесь .

...