Как я могу использовать секретный объект, созданный из файла Google cloud JSON, в служебную учетную запись? У меня minikf
на ВМ и kubeflow
установлены. Я пытаюсь создать контейнер, используя Jupyter
блокнот в minikf
кластере Kubernetes. Ноутбук имеет доступ к GCP с помощью PodDefault, но контейнер kanico, запущенный с notebook
, автоматически не может получить доступ к GCP. Код в блокноте jupyter для построения контейнера выглядит следующим образом:
IMAGE_NAME="mnist_training_kf_pipeline"
TAG="latest" # "v_$(date +%Y%m%d_%H%M%S)"
GCR_IMAGE="gcr.io/{PROJECT_ID}/{IMAGE_NAME}:{TAG}".format(
PROJECT_ID=PROJECT_ID,
IMAGE_NAME=IMAGE_NAME,
TAG=TAG
)
builder = kfp.containers._container_builder.ContainerBuilder(
gcs_staging=GCS_BUCKET + "/kfp_container_build_staging")
image_name = kfp.containers.build_image_from_working_dir(
image_name=GCR_IMAGE,
working_dir='./tmp/components/mnist_training/',
builder=builder
)
Я получаю сообщение об ошибке:
Error: error resolving source context: dialing: google: could not find default credentials. See https://developers.google.com/accounts/docs/application-default-credentials for more information.
Usage:
executor [flags]
Имя модуля, начинающееся с Kaniko, создается и дает сбой, потому что оно может ' Доступ к облачному хранилищу Google:
Доказательством того, что ноутбук Jupyter может использовать мой секретный объект "user-gcp-sa", является то, что приведенный выше код готовит файлы на GCS: