0

我們使用Google Container Registry來存儲我們的Docker鏡像。如何停止gcloud docker - 覆蓋長壽命憑據?

要授權我們的構建實例,我們將長期訪問令牌轉換爲.docker/config.json,如docs中所述。

直到某人(即一些Makefile)使用gcloud docker -- push ...推送到註冊表(而不是例如docker push ...),此功能完全正常。 gcloud替換現有的長期憑證,短期憑證將在一段時間後過期。因此,隨後的構建可能會失敗,具體取決於具體時間。

我的問題:我怎樣才能防止gcloud docker ...搞亂我提供的憑證?

我試過chattr +i .docker/config.json,但這只是讓gcloud抱怨。

回答

1

https://cloud.google.com/sdk/gcloud/reference/docker

的gcloud搬運工命令組包裹搬運工命令,以便gcloud可以注入適當的新鮮認證令牌到與搬運工註冊表交互請求。

gcloud docker所做的唯一的事情是更改這些憑據,然後調用docker CLI。如果您不希望它更改憑證,則沒有理由不直接致電docker

一種解決方法可能是使用備用配置文件位置作爲您的長期憑據;每https://docs.docker.com/engine/reference/commandline/cli/

Options: 
     --config string  Location of client config files (default "/root/.docker")