2016-09-01 73 views
7

每當我試圖從我的本地機器推到谷歌容器註冊的容器中,我得到以下錯誤:無法推到谷歌容器註冊(無法訪問存儲庫)

denied: Unable to access the repository; please check that you have permission to access it.

如果我打開Cloud Shell,我可以毫無問題地推送容器。我曾嘗試過多次使用「gcloud auth login」,似乎沒有任何區別。我在本地運行其他gcloud命令時沒有任何問題。任何幫助將不勝感激。

+0

今天,面對它......這事,因爲我選擇了命令行亞洲的數據中心......要解決我刪除了該項目,並創建了一個新的,其次https://cloud.google.com/datastore/docs/地點和選擇數據中心我們中央,它解決了問題 –

回答

6

FYI運行到類似問題的其他客戶: https://github.com/docker/docker/issues/22910

存在一個泊塢窗客戶端(1.11,1.12)的最新版本,並正在對新安裝啓用默認的證書存儲,一個錯誤,這錯誤打破私人登記。從泊塢窗的配置(例如〜/ .docker/config.json)拆卸

"credsStore": "whatever" 

場和運行

gcloud docker ... 

應該解決這個問題。

更新:

另外,我們已經實現了自己的證書幫助其解決問題爲我們的客戶(即沒有得到由GCR缺乏計劃絆倒Docker客戶端用來請求憑據的URL)。 要安裝憑證幫手:

  • 下載助手二進制,並把它放在你的PATH
  • 執行docker-credential-gcr configure-docker配置到多克爾客戶
+1

非常感謝您的幫助!我在這個問題上從Google獲得的支持給我留下了深刻的印象(即使這不是你的問題)。 –

+0

我們旨在取悅! OMG! – jsand

+1

爲什麼我沒有看到這個更早..花了3天試圖上傳一個碼頭圖像到我的谷歌容器註冊表沒有成功。非常感謝! – Tianhai

1

這聽起來像gcloud可能不知道哪個項目與你關聯。

您可以運行

gcloud info

,以驗證該項目gcloud使用。

如果沒有列出您正在力推形象工程,你可以用--project標誌像

gcloud --project= docker push ...

要設置gcloud默認的項目指定它,你可以運行

gcloud config set project

+0

感謝您的答覆。該項目已設置。我繼續前進,爲了安全起見而重新設置它,但這並沒有幫助。 –

2

您是否運行gcloud auth登錄?

+0

是的,我做了幾次 –

0

只是爲了給出一個更新的答案:我想推到eu.gcr.io.因此,我需要驗證到註冊表(我花了一段時間才能找出答案)。

所以第一:

docker login -e [email protected] -u oauth2accesstoken -p "$(gcloud auth print-access-token)" https://eu.gcr.io 

二:

gcloud docker -- push eu.gcr.io/myProjectName/myComputeMachineName 

在Windows上使用Cygwin 10 PRO(在Hyper-V),這些版本:

$ gcloud --version 
Google Cloud SDK 148.0.0 
bq 2.0.24 
bq-nix 2.0.24 
core 2017.03.17 
core-nix 2017.02.28 
gcloud 
gcloud-deps 2017.02.28 
gcloud-deps-linux-x86_64 2017.02.28 
gsutil 4.23 
gsutil-nix 4.22 

$ docker --version 
Docker version 17.03.1-ce-rc1, build 3476dbf 
0

我有同樣的問題,而試圖在個人謨使用GCP:

一看在GCP控制檯中的活動選項卡給我,我是努力推動與我的專業電子郵件地址(不允許在項目),即使我只是記錄在我個人的一個使用:

gcloud auth login 

的原因是,我也跑了幾個月前的這個命令:

gcloud auth application-default login 

與我的專業電子郵件地址。

我不得不再次運行它,我個人的地址,一切運行良好登錄!

1

我有同樣的問題,沒有解決它,直到我完全刪除gcloud info下列出的文件夾(在安裝和配置目錄),然後重新安裝SDK。

然後跑gcloud components install docker-credential-gcr和集備份。一切正常。