我無法獲取在Google容器引擎中工作的應用程序默認憑據。文檔說它們是用於App Engine和Compute Engine的,但我被告知應該透明地傳遞到Container Engine上運行的容器。Google容器引擎:訪問雲存儲
這裏是一個的失敗代碼:
credentials = GoogleCredentials.get_application_default()
service = discovery.build('storage', 'v1', credentials=credentials)
它與失敗的錯誤:AssertionError: No api proxy found for service "memcache"
它是正確的預期應用默認憑據與集裝箱引擎工作?如果沒有,任何人都可以推薦從容器引擎上運行的容器連接雲存儲的正確方法嗎?
謝謝。
編輯:運行之後gcloud beta auth application-default activate-service-account --key-file <my_key>.json
在上面的Python示例中的credentials
對象被填充數據。不過,我仍然遇到同樣的錯誤。
您使用的是什麼運行時? – mgilson
@mgilson請讓我知道如果這是你要求的:'客戶端版本:version.Info {Major:「1」,Minor:「2」,GitVersion:「v1.2.4」,GitCommit:「3eed1e3be6848b877ff80a93da3785d9034d0a4f」 ,GitTreeState:「clean」} 服務器版本:version.Info {Major:「1」,Minor:「2」,GitVersion:「v1.2.4」,GitCommit:「3eed1e3be6848b877ff80a93da3785d9034d0a4f」,GitTreeState:「clean」} – user326502
IIRC ,容器引擎支持不同的python運行時,並不是所有的都支持'memcache'。 (FWIW,這是我的經驗之外,所以我可能是錯的 - 我只是從我腦海裏的某些地方拉起了這些東西,我似乎因爲某種原因緩存了一些這些信息......) – mgilson