Kubernetes Minikube en Windows Pod no pudo tirar de la image

Estoy intentando ejecutar Kubernetes en Windows usando Minikube y Hyper-V. Logré ejecutar Minikube con éxito usando minikube start --vm-driver=hyperv --hyperv-virtual-switch=KuberNAT y revisando el minikube status me da

 PS > minikube status minikube: Running cluster: Running kubectl: Correctly Configunetworking: pointing to minikube-vm at 192.168.1.74 

pero ahora estoy tratando de ejecutar una image en kubernetes usando kubectl, he logrado que mi window de powershell apunte hacia la vm de minikube docker-env | Invoke-Expression con minikube docker-env | Invoke-Expression minikube docker-env | Invoke-Expression (solo PowerShell, no he podido hacer algo similar en el símbolo del sistema) y tengo que insert este command en cada window de PowerShell que quiero usar para enviar una image a las imágenes de Kubernetes.

El problema que tengo es que no puedo ejecutar un contenedor, puedo "implementar" una image con kubectl run cloudconfig --image=cloudconfig pero el pod creado me da este error:

 Failed to pull image "cloudconfig": rpc error: code = Unknown desc = Error response from daemon: repository cloudconfig not found: does not exist or no pull access 

Si ejecuto la docker image ls obtengo

 REPOSITORY TAG IMAGE ID CREATED SIZE cloudconfig latest 9199d500e746 2 minutes ago 105MB openjdk 8-jre-alpine 5699ac7295f9 6 days ago 81.4MB gcr.io/google_containers/k8s-dns-sidecar-amd64 1.14.5 fed89e8b4248 5 weeks ago 41.8MB gcr.io/google_containers/k8s-dns-kube-dns-amd64 1.14.5 512cd7425a73 5 weeks ago 49.4MB gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64 1.14.5 459944ce8cc4 5 weeks ago 41.4MB gcr.io/google_containers/kubernetes-dashboard-amd64 v1.7.0 284ec2f8ed6c 5 weeks ago 128MB gcr.io/google-containers/kube-addon-manager v6.4-beta.2 0a951668696f 4 months ago 79.2MB gcr.io/google_containers/pause-amd64 3.0 99e59f495ffa 18 months ago 747kB 

y docker container ls me da

 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3d79bab2a212 gcr.io/google_containers/pause-amd64:3.0 "/pause" 41 seconds ago Up 40 seconds k8s_POD_cloudconfig-88c867589-qpqph_default_ac2dd8bb-bee1-11e7-8e51-00155d00ba16_0 e6723a726c26 gcr.io/google_containers/k8s-dns-sidecar-amd64 "/sidecar --v=2 --..." 43 minutes ago Up 43 minutes k8s_sidecar_kube-dns-6fc954457d-gvmz6_kube-system_f5de0b0e-be4b-11e7-8699-00155d00ba16_1 36980feeff76 gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64 "/dnsmasq-nanny -v..." 43 minutes ago Up 43 minutes k8s_dnsmasq_kube-dns-6fc954457d-gvmz6_kube-system_f5de0b0e-be4b-11e7-8699-00155d00ba16_1 d3d61e3861f0 gcr.io/google_containers/k8s-dns-kube-dns-amd64 "/kube-dns --domai..." 43 minutes ago Up 43 minutes k8s_kubedns_kube-dns-6fc954457d-gvmz6_kube-system_f5de0b0e-be4b-11e7-8699-00155d00ba16_1 45208e98bd7f gcr.io/google_containers/kubernetes-dashboard-amd64 "/dashboard --inse..." 43 minutes ago Up 43 minutes k8s_kubernetes-dashboard_kubernetes-dashboard-8hw2w_kube-system_f5bb8241-be4b-11e7-8699-00155d00ba16_1 1fbb3688711d gcr.io/google_containers/pause-amd64:3.0 "/pause" 43 minutes ago Up 43 minutes k8s_POD_kube-dns-6fc954457d-gvmz6_kube-system_f5de0b0e-be4b-11e7-8699-00155d00ba16_1 c71ab868584c gcr.io/google-containers/kube-addon-manager "/opt/kube-addons.sh" 43 minutes ago Up 43 minutes k8s_kube-addon-manager_kube-addon-manager-minikube_kube-system_9831e93c3188555873fdb49f43198eef_1 1df643d195d2 gcr.io/google_containers/pause-amd64:3.0 "/pause" 43 minutes ago Up 43 minutes k8s_POD_kubernetes-dashboard-8hw2w_kube-system_f5bb8241-be4b-11e7-8699-00155d00ba16_1 28f48e09fd46 gcr.io/google_containers/pause-amd64:3.0 "/pause" 43 minutes ago Up 43 minutes k8s_POD_kube-addon-manager-minikube_kube-system_9831e93c3188555873fdb49f43198eef_1 

Así que estoy asumiendo que todas las otras cosas están funcionando correctamente y kubernetes simplemente de alguna manera no sabe dónde encontrar mi image. ¿Alguien sabe cómo puedo hacerlo funcionar?

Encontré la solución, es sugerida por un usuario en este hilo de github

Si alguien más termina en este hilo, la solución que funcionó para mí fue la actualización de la política de extracción de image, aquí puede encontrar información al respecto. De los documentos: por defecto, el kubelet intentará extraer cada image del logging especificado. Necesita actualizar esto para que pueda verse localmente.

Si está ejecutando desde la CLI, agregue –image-pull-policy = IfNotPresent a su ejecución kubectl, es decir,

kubectl ejecutar some-node-proj –image = my-awesome-local-image: v1 –image-pull-policy = IfNotPresent

agregando --image-pull-policy=IfNotPresent me permitió ejecutar los contenedores sin problemas.