Я пытаюсь загрузить изображение из реестра контейнера Google на машине CoreOS, работающей на другом сервере (не GCE).403 Запрещено при загрузке изображения контейнера из реестра вне GCE
Я установил новую учетную запись службы:
[email protected] ~ $ docker run -t -i -v $(pwd)/keys:/tmp/keys --name gcloud-config ernestoalejo/google-cloud-sdk-with-docker gcloud auth activate-service-account [email protected] --key-file /tmp/keys/key.p12 --project XXXX
Activated service account credentials for: [[email protected]]
счет активен, но когда я пытаюсь загрузить контейнер изображения он возвращает статус запретной HTTP.
[email protected] ~ $ /usr/bin/docker run --volumes-from gcloud-config --rm -v /var/run/docker.sock:/var/run/docker.sock ernestoalejo/google-cloud-sdk-with-docker sh -c "gcloud preview docker pull gcr.io/XXXXX/influxdb"
Pulling repository gcr.io/XXXXX/influxdb
time="2015-05-08T06:38:55Z" level="fatal" msg="HTTP code: 403"
ERROR: (gcloud.preview.docker) A Docker command did not run successfully.
Tried to run: 'docker pull gcr.io/XXXXX/influxdb'
Exit code: 1
Существует только один аккаунт на сервере и настроен правильно:
[email protected] ~ $ /usr/bin/docker run --volumes-from gcloud-config --rm -v /var/run/docker.sock:/var/run/docker.sock ernestoalejo/google-cloud-sdk-with-docker sh -c "gcloud auth list"
To set the active account, run:
$ gcloud config set account ``ACCOUNT''
Credentialed accounts:
- [email protected] (active)
Как я могу разрешить внешнюю машину, чтобы загрузить изображения из реестра?
Примечание: Изображение ernestoalejo/google-cloud-sdk-with-docker
такое же, как google/cloud-sdk
но с this issue фиксированной.
ОБНОВЛЕНИЕ: Я также пробовал решение this answer, но это не имеет значения.
PROJECT_ID=XXXXXX
[email protected]
gsutil acl ch -u $ROBOT:R gs://artifacts.$PROJECT_ID.appspot.com
gsutil -m acl ch -R -u $ROBOT:R gs://artifacts.$PROJECT_ID.appspot.com
gsutil defacl ch -u $ROBOT:R gs://artifacts.$PROJECT_ID.appspot.com
Можете ли вы «скрутить https://gcr.io/v1/_ping» из Франкфурта? Эта конечная точка неаутентифицирована, поэтому 403 должен означать только то, что ваш трафик несколько более принципиально запрещен (например, из Северной Кореи). Я протянусь, чтобы увидеть, видели ли другие что-то подобное, спасибо за головы. – mattmoor
Я думаю, что я как-то достиг «https://gcr.io/v1/_ping»; но теперь, когда я снова пытаюсь, я даже не могу добраться до «gcr.io». Он всегда возвращает «Ошибка 403 (Запретная) !! 1» HTML-страница. – ernestoalejo