私は、私の個人のhub.docker.comレジストリイメージで動作させるためにKubernetesを動作させるのに苦労しています。マックOS X Yosemite 10.10.5
Docker Hubをプライベートイメージで使用したKubernetes PullImageError
上Client Version: version.Info{Major:"1", Minor:"1+", GitVersion:"v1.1.0-alpha.0.1588+e44c8e6661c931", GitCommit:"e44c8e6661c931f7fd434911b0d3bca140e1df3a", GitTreeState:"clean"} Server Version: version.Info{Major:"1", Minor:"1", GitVersion:"v1.1.3", GitCommit:"6a81b50c7e97bbe0ade075de55ab4fa34f049dc2", GitTreeState:"clean"}
とベイグラント1.7.4
私はここに与えられた指示に従った:私はkubectlバージョン使用しています
を、それはあなたがにログインする必要がありますと言いますレジストリをbase64に変換すると、結果として得られる.docker/config.json
の内容がエンコードされ、yamlドキュメントで次のように使用されます。
apiVersion: v1
kind: Secret
metadata:
name: myregistrykey
data:
.dockercfg: eyAiYXV0aHMiOiB7ICJodHRwczovL2luZGV4LmRvY2tlci5pby92MS8iOiB7ICJhdXRoIjogImFXNTBjbWx1YzJsak9tSTJVVTR5Z...h1YkBpbnRyaW5zaWMud29ybGQiIH0gfSB9Cg==
type: kubernetes.io/dockercfg
それからkubectlにフィードしてください。
apiVersion: v1
kind: Pod
metadata:
name: authorities-backend
spec:
containers:
- name: authorities-backend
image: intrinsic/authorities-backend:latest
imagePullSecrets:
- name: myregistrykey
とkubectl create
Dそれ:私はその後、私のポッド定義で(ここではmyregistrykey
と呼ばれる)を得られたキーを使用していました。
しかし、kubectlは、画像を取得するために失敗し続けている:Kubernetesマスター上
[[email protected] intrinsic]# kubectl get pods
NAME READY STATUS RESTARTS AGE
authorities-backend 0/1 PullImageError 0 7m
ドッカプルしかし働いていました。
私には何が欠けていますか?上記ポッド定義で
UPDATE
、私はすなわちdocker.io、レジストリのホストを指定するために省略していました。これを修正すると、次のようになります。 image: docker.io/intrinsic/authorities-backend:latest
ただし、問題は解決しません。 kubectl get events -w
を行うと、私を取得します。 6s 0s 2 authorities-backend Pod spec.containers{authorities-backend} Failed {kubelet 10.245.1.3} Failed to pull image "docker.io/intrinsic/authorities-backend": image pull failed for docker.io/intrinsic/authorities-backend, this may be because there are no credentials on this request. details: (Error: image intrinsic/authorities-backend:latest not found)
私はkubectl get secrets
の下でそれを持っているように秘密が適切に、登録されている知っている: NAME TYPE DATA AGE default-token-a7s5n kubernetes.io/service-account-token 2 51m myregistrykey kubernetes.io/dockercfg 1 50m
まだ混乱して...
キャンディー
https://github.com/kubernetes/kubernetes/pull/18777はドキュメントを修正します。あなたのレビューは大歓迎です。 –
実際に、見落としのため、Kubernetesは現在 'type:kubernetes.io/dockerconfigjson'の検証を行っていません。私はこの問題を解決するためhttps://github.com/kubernetes/kubernetes/pull/18790を書きました。 –
このEricのおかげで - ドキュメントは素晴らしいです。私は実際に 'nodes = $(kubectl get node -o jsonpath = '{range.items [*]。メタデータ} {。name} {end}')' ''(エラー:出力形式を取得する) jsonpath = {range.items [*]。metadata} {。name} {end} "認識されません")おそらくこれを行う方法に関する私の無知のために。もしそれがもう少し明白であったなら、それでも素晴らしいだろう。 – candide