Частный реестр докеров в Kubernetes не виден другим модулям
У меня есть базовое развертывание CoreOS в Kubernetes. Я следовал инструкции на GitHub для настройки личного реестра Docker: https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/registry/README.md
Реестр подошел и прокси-сервер реестра тоже:
$ kubectl get po --namespace=kube-system
NAME READY STATUS RESTARTS AGE
kube-dns-v9-hd0hz 4/4 Running 0 1d
kube-registry-proxy-10.1.52.113 1/1 Running 0 1d
kube-registry-proxy-10.1.52.114 1/1 Running 0 1d
kube-registry-proxy-10.1.52.117 1/1 Running 0 1d
kube-registry-proxy-10.1.52.118 1/1 Running 0 1d
kube-registry-v0-ib8vx 1/1 Running 0 1d
kubernetes-dashboard-17zfm 1/1 Running 0 1d
Я также смог выдвинуть приватное изображение с помощью метода перенаправления порта (перенаправить порт либо в модуль реестра, либо в модуль прокси-сервера реестра). Но когда я пытаюсь использовать изображение, я получаю PullImageError:
kubectl run -i --tty ubuntu --image=localhost:5000/myfirstubuntu/ubuntu --restart=Never -- bash
И если я просто создаю новый контейнер с обычным Ubuntu и пытаюсь свернуть localhost:5000, я не получаю ошибку 404, как показано в инструкции, поэтому похоже, что модуль на том же узле не взаимодействует с прокси-сервером реестра как ожидается. Каковы способы дальнейшей отладки этого?
2 ответа
Бежать docker images
чтобы убедиться, что значение вашего изображения "REPOSITORY" равно "localhost:5000/myfirstubuntu/ubuntu"
[root@centos7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
localhost:5000/myfirstubuntu/ubuntu latest 05e197984182 18 hours ago 516.7 MB
Можно попробовать добавить элемент конфигурации в файл /etc/default/docker DOCKER_OPTS="$DOCKER_OPTS --insecure-registry=localhost:5000", затем перезапустить сервисный докер
Надеюсь предоставить ссылку!