Я хочу использовать CircleCI для развертывания моего кода в экземпляре Compute Engine. Я создал пользователя учетной записи службы и использую команду gcloud scp ниже:
gcloud --quiet compute scp --recurse dev/test/ [DEST_INSTANCE]:/var/www/dev/dev/test --zone=northamerica-northeast1-a --project [PROJECT_NAME]
для загрузки файлов в подпапку var, и развертывание завершается ошибкой, указанной ниже:
scp: /var/www/dev/dev/test: Permission denied
ERROR: (gcloud.compute.scp) [/usr/bin/scp] exited with return code [1].
Exited with code 1
Теперь я хочу предоставить доступ к учетной записи службы, но я не вижу ее в списке пользователей, которым нужно предоставить доступ, когда я использую cat /etc/passwd
. Как я могу предоставить разрешение учетной записи службы? Я назначил этой учетной записи следующие роли:
Активируйте правильную учетную запись службы, для которой вы назначили роли на своем снимке экрана, с помощью команды:
gcloud auth activate-service-account $ account --key-file = the_key_file.json
Пожалуйста, проверьте используемую учетную запись службы. Есть одна учетная запись службы, которая используется по умолчанию для GCE и создается GCP. Другой - тот, который вы создали.
Если вы используете тот, который создали, авторизовали ли вы вход для учетной записи службы с помощью файла ключей JSON?