關於kubernetes使用私有倉庫一點說明

1、概述html

  關於kubernetes使用私有docker image  registry的一些說明:node

  一、對於本身構建的項目鏡像或一些不想暴露到外網的image須要使用自建的私有倉庫,通常有兩種選擇:docker registry v二、harborgit

  二、鏡像倉都是作安全認證的,kubernetes在使用的時候也須要把認證加上去,採用建立secret的方式使用github

  三、關於鏡像倉的選擇:docker registry v2是官方的,部署簡單,不提供原生刪除image的功能;harbor功能比較全面,而且自帶ui方便使用管理。單純從使用來看通常docker           registry v2徹底知足需求,關於鏡像的清理參考:docker

       https://gist.github.com/cuishuaigit/34439b8946821c7898d1faefbf5bdbb1json

       http://www.javashuo.com/article/p-ydfkysxb-cn.htmlapi

 

2、使用安全

在k8s集羣的任意一個node節點上登錄registry,例如registry的地址是https://my-registry.image.com,user=registry,password=admin123ui

一、登錄spa

docker  login  https://my-registry.image.com  -u registry -p

而後輸入密碼(爲了安全不要在後面直接寫密碼,選擇交互式輸入),此時會在當前登錄的用戶目錄下面有個.docker/config.json文件,這裏面記錄了認證信息。

 

二、建立secrete

根據上面生成的config.json建立secrete:

 cat config.json  |base64 -w 0

而後將生成的字串複製到secrete的建立yaml文件裏面(確保沒有多餘的東西被複制):

cat  image-secrete.yaml

apiVersion: v1
kind: Secret
metadata:
  name: registry-secrete
  namespace: default
data:
  .dockerconfigjson: UmVhbGx5IHJlYWxseSByZWVlZWVlZWVlZWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGx5eXl5eXl5eXl5eXl5eXl5eXl5eSBsbGxsbGxsbGxsbGxsbG9vb29vb29vb29vb29vb29vb29vb29vb29vb25ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubmdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2cgYXV0aCBrZXlzCg==
type: kubernetes.io/dockerconfigjson

.dockerconfigjson後面的內容就是上面生成的字串

建立secrete

kubectl create -f image-secrete.yaml
相關文章
相關標籤/搜索