Я установил kubernetes V1.20.1 с containerd
вместо Docker. Теперь мне не удалось вытащить образы Docker из моего частного реестра (Harbour).
Я уже изменил /etc/containerd/config.toml вот так:
[plugins."io.containerd.grpc.v1.cri".registry]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
endpoint = ["https://registry-1.docker.io"]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."registry.foo.com"]
endpoint = ["https://registry.foo.com"]
[plugins."io.containerd.grpc.v1.cri".registry.configs]
[plugins."io.containerd.grpc.v1.cri".registry.configs."registry.foo.com"]
[plugins."io.containerd.grpc.v1.cri".registry.configs."registry.foo.com".auth]
username = "admin"
password = "Harbor12345"
Но это не сработало. Вытягивание не удалось с сообщением:
Failed to pull image "registry.foo.com/library/myimage:latest": rpc error: code = Unknown
desc = failed to pull and unpack image "registry.foo.com/library/myimage:latest": failed to
resolve reference "registry.foo.com/library/myimage:latest": unexpected status code
[manifests latest]: 401 Unauthorized
Реестр My Harbour доступен через HTTPS с сертификатом Let's Encrypt. Так что https здесь не должно быть проблемой.
Даже если я попытаюсь создать docker-secret, это не сработает:
kubectl create secret docker-registry registry.foo.com --docker-server=https://registry.foo.com --docker-username=admin --docker-password=Harbor12345 [email protected]
Кто-нибудь может привести мне пример того, как настроить частный реестр в Kubernetes с помощью containerd?