2016-09-14 89 views
0

當使用從一個項目在谷歌雲與Kubernetes另一個項目B中的谷歌雲私有註冊(gcr.io),訪問密鑰每隔X分鐘再生。這導致在工程中使用私人註冊表在項目B中工作大約15分鐘,然後密鑰被重新設置,這使我的設置私鑰失效,並且私人註冊表不再可用。用於設置私人密鑰更改私人註冊表項雲

過程:

echo $(cat /root/.dockercfg) | base64 -w 0 

密鑰然後在secret.yaml文件中設置要被傳送並與kubernetes其它系統中使用。這一切都適用於X分鐘。

Secret.yaml:

apiVersion: v1 
kind: Secret 
metadata: 
    name: dockerpullsecret 
data: 
    .dockercfg: {the base64 key} 
type: kubernetes.io/dockercfg 

我目前的解決方案: 彌補這一(相當惱人的)行爲,我能想到的唯一的辦法就是建立一個shell腳本生成的密鑰文件和加載每當密鑰更改時,它就會進入相關的kubernetes環境。這是一種相當強悍的方式。

有沒有人有更好的(更優雅)的解決方案,然後只是腳本?

回答

0

你想要做的是使用Service Account JSON file進行身份驗證,而不是oauth2token。 oauth2tokens旨在用於有gcloud二進制文件可用的地方。