- 一般yaml檔裡面可以拉取公用倉庫的image,但如果是私有倉庫的話需要給他額外的密鑰才能正常拖拉,道理就像是再做docker login後才能對私有倉庫做docker pull動作,一般私有倉庫設定可以從官網得知設定方法
創建名為regcred密鑰
1
2
3
4
5kubectl create secret docker-registry regcred \
--docker-server=<your-registry-server> \
--docker-username=<your-name>\
--docker-password=<your-pword>\
--docker-email=<your-email>再yaml檔裡spec節點下加入配置
1
2
3
4
5......
spec:
imagePullSecrets:
- name: regcred
......若是要提取GCP私有倉庫的話,則必須先創建一個IAM帳號,此帳號需有獲取docker倉庫權限,可參考這篇做設定
- 創建IAM帳號就省略了,以下是設定auth-key的方法
1
2
3
4
5kubectl create secret docker-registry $SECRETNAME \
--docker-server=https://gcr.io \
--docker-username=_json_key \
--docker-email=user@example.com \
--docker-password="$(cat k8s-gcr-auth-ro.json)"