无法以错误x509拉取映像:minikube中的未知权限签名的证书

时间:2018-10-18 09:12:17

标签: kubernetes docker-registry

我使用minikube练习有关kubernetes的事情

我将docker-registry设为Pod,然后创建docker-registry服务

编辑/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

创建注册表-tls-秘密

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]

然后我尝试制作世界一流的豆荚

您好世界映像已进入docker-registry(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-deployment.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 :(得分:1)

在证书中存储端口号没有标准,因此证书的公用名不应包含端口。使用CN=192.168.99.100创建证书,然后重复相同的步骤。有关通用名称的更多信息,请参见here

确保将证书数据复制到/etc/docker/certs.d/192.168.99.100:30050/ca.crt