kubernetes使用harbor私有仓库

让人想犯罪 __ 提交于 2020-04-05 19:13:26

预置

harbor url: https://harbor.test.com:6443

image url: harbor.test.com:6443/test/test-secret:latest

namespace: harbor-test

  • 将harbor的ca.crt复制到node的/etc/docker/certs.d/harbor.test.com:6443目录下
cp ca.crt /etc/docker/certs.d/harbor.test.com:6443/
  • 创建Pod拉取镜像需使用的secret
kubectl create secret docker-registry my-harbor-secret --docker-server=harbor.test.com:6443 --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email> --namespace=harbor-test

secret默认仅在default namespace下有效,若不加--namespace,非default namespace无法使用该secret,会显示拉取镜像失败

Failed to pull image "harbor.test.com:6443/test/test-secret:latest": rpc error: code = Unknown desc = Error response from daemon: pull access denied for harbor.test.com:6443/test/test-secret:latest, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
  • 创建测试用Pod private-reg-pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: private-reg
  namespace: harbor-test
spec:
  containers:
  - name: private-reg-container
    image: harbor.test.com:6443/test/test-secret:latest
  imagePullSecrets:
  - name: my-harbor-secret
kubectl create -f private-reg-pod.yaml

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!