2017-03-31 3 views
5

Ich habe eine private Docker-Image-Registrierung auf einem Linux-VM (10.78.0.228: 5000) und a Kubernetes Master auf einem anderen VM ausgeführt wird verwendet Centos Linux 7."x509: Zertifikat von unbekannter Behörde signiert" sogar mit "--insecure-skip-tls-verify" -Option in Kubernetes

ich den folgenden Befehl ein POD zu erstellen: kubectl create --insecure-skip-tls-verify -f monitorms-rc.yml

ich diese sample monitorms-mmqhm 0/1 ImagePullBackOff 0 8m

und auf Lauf kubectl describe pod monitorms-mmqhm --namespace=sample

0 erhalten

Er druckt: Warning Failed Failed to pull image "10.78.0.228:5000/monitorms": Error response from daemon: {"message":"Get https://10.78.0.228:5000/v1/_ping: x509: certificate signed by unknown authority"}

Ist das nicht Kubernetes soll das Server-Zertifikat für alle Operationen während POD Schöpfung ignorieren, wenn die --insecure-skip-tls-verify übergeben wird?

Wenn nicht, wie kann ich die Tls-Überprüfung beim Ziehen des Docker-Images ignorieren?

PS:

Kubernetes Version:

Client-Version: version.Info {Dur: "1", Minor: "5", GitVersion: "v1.5.2", GitCommit: "08e099554f3c31f6e6f07b448ab3ed78d0520507", GitTreeState: "clean", Builddate: "2017-01-12T04: 57: 25Z", GoVersion: "go1.7.4", Compiler: "gc", Plattform: "linux/amd64"}

Server Version: version.Info {Major: "1", Minor: "5", GitVersion: "v1.5.2", GitCommit: "08e099554f3c31f6e6f07b448ab3ed78d0520507", GitTreeState: "clean", BuildDate: "2017-01-12T04: 52: 34Z", GoVersion: "go1.7.4", Compiler: "gc", Plattform: "linux/amd64"}

Ich habe dies angesprochen Problem hier: https://github.com/kubernetes/kubernetes/issues/43924

Antwort

3

Das Problem, das Sie sehen, ist eigentlich ein Docker Problem. Die Verwendung von --insecure-skip-tls-verify ist ein gültiger Arg zu kubectl, aber es behandelt nur die Verbindung zwischen kubectl und dem Kubernetes-API-Server. Der Fehler, den Sie sehen, liegt tatsächlich daran, dass der Docker-Dämon sich nicht bei der privaten Registrierung anmelden kann, weil das verwendete Cert in Unsigned verwendet wird.

Werfen Sie einen Blick auf die Docker insecure registry docs und dies sollte Ihr Problem lösen.

Verwandte Themen