2016-07-27 44 views
3

GKE羣集如何從另一個項目中託管的容器註冊表中提取容器圖像?在另一個項目中使用來自GKE的Google容器註冊表

我在項目<reader-project>嘗試訪問項目<registry-project>中的GCR圖像的GKE羣集。

我試着加入GCE服務帳戶電子郵件<reader-project>與在<registry-project>在存儲桶讀者訪問權限的用戶,但我仍然得到錯誤:

<Error><Code>AccessDenied</Code> 
<Message>Access denied.</Message> 
<Details>Caller does not have storage.objects.get access to object us.artifacts.<registry-project>.appspot.com/containers/images/sha256:<tag>. 
</Details></Error> 

回答

4

嘗試添加GCE服務帳戶電子郵件爲具有存儲對象查看器角色的用戶。它爲服務帳戶提供對項目中GCS對象(容器圖像)的「只讀」訪問權限。

+0

中獲取圖像是否可以在一個IAM角色下添加一堆項目服務帳戶電子郵件,以便我可以爲該組授予其他權限?看起來應該是這樣,但我已經嘗試了Storage Viewer的這種方法,但它不起作用。 – Symmetric

+0

是的,那應該沒問題。 –

+0

現在不行。我嘗試將不同項目的計算引擎服務帳戶添加到包含註冊表的項目中。我仍然得到403錯誤。 –

0

你可以運行下面的命令檢查權限兩個桶:

的gsutil ACL獲得GS://us.artifacts..appspot.com

的gsutil ACL獲得GS://文物。 .appspot.com

artifacts..appspot.com是默認存儲桶。將服務帳戶添加爲存儲對象查看器時,將授予默認存儲桶的只讀權限。

這裏是關於gsutil工具的鏈接: https://cloud.google.com/storage/docs/gsutil/commands/acl

0

請看下,你有你的GKE,你會看到類似用戶項目的IAM權限:[email protected]

然後在您的容器註冊表項目中,授予該用戶Storage Object Viewer permission。您的GKE將被允許從

相關問題