Невозможно получить изображение с ошибкой x509: сертификат подписан неизвестным органом в мини-кубе - PullRequest
0 голосов
/ 18 октября 2018

Я практикую в kubernetes использование minikube

Я делаю Docker-Registry в качестве pods и создаю службу Docker-Registry

edit /etc/docker/daemon.json

{
"insecure-registries":["192.168.99.100:30050"]
}

редактировать openssl.conf

[v3_req]
subjectAltName = IP:192.168.99.100

И я делаю сертификат

openssl genrsa -out my.crt
openssl req -x509 -new -nodes -key my.key -subj "CN=192.168.99.100:30050" -days 5000 -out my.crt

создать registry-tls-secret

kubectl create secret generic registry-tls-secret --from-file=my.crt=my.crt --from-file=my.key=my.key

, создать каталог и скопировать файл my.crt в каталог

/etc/docker/certs.d/192.168.99.100:30050

чтобы я мог нажать& тянуть 192.168.99.100:30050/[image]:[tag] на хосте

И после того, как я попытаюсь сделать модули hello-world

образ hello-world будет в реестре docker(192.168.99.100:30050) уже

я создаю секреты docker-registry regcred

kubectl create secret docker-registry regcred --docker-server=192.168.99.100:30050 --docker-usernmae=<user-name> --docker-password=<user-password> --docker-email=<user-email>

и пишу helloworld-deploy.yaml

...
    image: 192.168.99.100:30050/hello-world:v1
...
imagePullSecrets:
  -name: regcred
...

Наконец я применяю helloworld-deployment.yaml Но я получил сообщение об ошибке, что

Failed to pull image "192.168.99.100:30050/hello-world:v1": rpc error: code = Unknown desc = Error response from daemon: Get https://192.168.99.100:30050/v2/: x509: certificate signed by unknown authority

Не совсем то, что мне не хватает ... пожалуйста, помогите мне ...

1 Ответ

0 голосов
/ 18 октября 2018

Стандарт для хранения номера порта в сертификате отсутствует, поэтому общее имя сертификата не должно содержать порт.Создайте сертификат с помощью CN=192.168.99.100 и повторите те же действия.Для получения дополнительной информации об общем имени см. здесь .

Убедитесь, что вы скопировали данные сертификата в /etc/docker/certs.d/192.168.99.100:30050/ca.crt.

...