minikube start with none driver and cri-o failed

Created on 28 Sep 2020  路  2Comments  路  Source: kubernetes/minikube

I want to install minikube in my Ubuntu OS (which is existed VM provided by cloud), so I always use --driver=none and it always works correctly. And now I want to use cri-o instead of using docker and containerd, so I remove docker & containerd by using command "sudo apt-get remove docker docker-engine docker.io containerd" and then install cri-o in my Ubuntu 20.04 to install new minikube but failed and the info ask me to install docker and I think it is unreasonable.


Steps to reproduce the issue:

  1. minikube start failed
$ sudo minikube start --network-plugin=cilium --enable-default-cni --driver=none --extra-config=apiserver.service-account-signing-key-file=/var/lib/minikube/certs/sa.key --extra-config=apiserver.service-account-issuer=kubernetes.default.svc --kubernetes-version=v1.19.2 --container-runtime=cri-o --bootstrapper=kubeadm
* minikube v1.13.1 on Ubuntu 20.04
* Using the none driver based on existing profile

* Exiting due to PROVIDER_NONE_NOT_FOUND: The 'none' provider was not found: exec: "docker": executable file not found in $PATH
* Suggestion: Install docker
* Documentation: https://minikube.sigs.k8s.io/docs/reference/drivers/none/


Full output of failed command:

sudo minikube start --network-plugin=cilium --enable-default-cni --driver=none --extra-config=apiserver.service-account-signing-key-file=/var/lib/minikube/certs/sa.key --extra-config=apiserver.service-account-issuer=kubernetes.default.svc --kubernetes-version=v1.19.2 --container-runtime=cri-o --bootstrapper=kubeadm --alsologtostderr
I0928 03:49:02.409739  528689 out.go:191] Setting JSON to false
I0928 03:49:02.411136  528689 start.go:102] hostinfo: {"hostname":"node-10-210-58-165","uptime":81951,"bootTime":1601175791,"procs":297,"os":"linux","platform":"ubuntu","platformFamily":"debian","platformVersion":"20.04","kernelVersion":"5.4.0-48-generic","virtualizationSystem":"kvm","virtualizationRole":"host","hostid":"54702e42-2192-a0f5-11c0-6cc6ca46bcc6"}
I0928 03:49:02.411537  528689 start.go:112] virtualization: kvm host
I0928 03:49:02.414340  528689 out.go:109] * minikube v1.13.1 on Ubuntu 20.04
* minikube v1.13.1 on Ubuntu 20.04
I0928 03:49:02.414624  528689 notify.go:126] Checking for updates...
I0928 03:49:02.414992  528689 start_flags.go:380] config upgrade: Name=minikube
I0928 03:49:02.415024  528689 start_flags.go:387] config upgrade: KicBaseImage=gcr.io/k8s-minikube/kicbase:v0.0.12-snapshot3@sha256:1d687ba53e19dbe5fafe4cc18aa07f269ecc4b7b622f2251b5bf569ddb474e9b
I0928 03:49:02.415458  528689 exec_runner.go:49] Run: systemctl --version
I0928 03:49:02.417697  528689 driver.go:287] Setting default libvirt URI to qemu:///system
I0928 03:49:02.419283  528689 out.go:109] * Using the none driver based on existing profile
* Using the none driver based on existing profile
I0928 03:49:02.419323  528689 start.go:246] selected driver: none
I0928 03:49:02.419343  528689 start.go:653] validating driver "none" against &{Name:minikube KeepContext:false EmbedCerts:false MinikubeISO: KicBaseImage:gcr.io/k8s-minikube/kicbase:v0.0.12-snapshot3@sha256:1d687ba53e19dbe5fafe4cc18aa07f269ecc4b7b622f2251b5bf569ddb474e9b Memory:0 CPUs:0 DiskSize:0 VMDriver: Driver: HyperkitVpnKitSock: HyperkitVSockPorts:[] DockerEnv:[] ContainerVolumeMounts:[] InsecureRegistry:[] RegistryMirror:[] HostOnlyCIDR: HypervVirtualSwitch: HypervUseExternalSwitch:false HypervExternalAdapter: KVMNetwork: KVMQemuURI: KVMGPU:false KVMHidden:false DockerOpt:[] DisableDriverMounts:false NFSShare:[] NFSSharesRoot: UUID: NoVTXCheck:false DNSProxy:false HostDNSResolver:false HostOnlyNicType: NatNicType: KubernetesConfig:{KubernetesVersion:v1.10.0 ClusterName: APIServerName:minikubeCA APIServerNames:[] APIServerIPs:[] DNSDomain:cluster.local ContainerRuntime: CRISocket: NetworkPlugin: FeatureGates: ServiceCIDR:10.96.0.0/12 ImageRepository: LoadBalancerStartIP: LoadBalancerEndIP: ExtraOptions:[] ShouldLoadCachedImages:false EnableDefaultCNI:false CNI: NodeIP: NodePort:0 NodeName:} Nodes:[{Name:minikube IP:10.210.58.165 Port:0 KubernetesVersion:v1.10.0 ControlPlane:true Worker:true}] Addons:map[] VerifyComponents:map[] StartHostTimeout:0s}
I0928 03:49:02.419439  528689 start.go:664] status for none: {Installed:false Healthy:false Running:true NeedsImprovement:false Error:exec: "docker": executable file not found in $PATH Fix:Install docker Doc:https://minikube.sigs.k8s.io/docs/reference/drivers/none/}
I0928 03:49:02.420821  528689 out.go:109]

W0928 03:49:02.421004  528689 out.go:145] * Exiting due to PROVIDER_NONE_NOT_FOUND: The 'none' provider was not found: exec: "docker": executable file not found in $PATH
* Exiting due to PROVIDER_NONE_NOT_FOUND: The 'none' provider was not found: exec: "docker": executable file not found in $PATH
W0928 03:49:02.421373  528689 out.go:145] * Suggestion: Install docker
* Suggestion: Install docker
W0928 03:49:02.421419  528689 out.go:145] * Documentation: https://minikube.sigs.k8s.io/docs/reference/drivers/none/
* Documentation: https://minikube.sigs.k8s.io/docs/reference/drivers/none/
I0928 03:49:02.425245  528689 out.go:109]

Full output of minikube start command used, if not already included:

Optional: Full output of minikube logs command:


$ sudo minikube logs

X Exiting due to GUEST_STATUS: load: filestore "": open /root/.minikube/machines/config.json: no such file or directory
*

cnone-driver cruntimcrio kinbug olinux prioritimportant-longterm triagduplicate

Most helpful comment

Also, the suggestion is silly and should be fixed too. It should only suggest that for the Docker container runtime.

There are no regression tests for any runtimes other than Docker either, so that is why it was not working properly.

Seems that it got worse in 6276c1cb1da7529b1f8fad712f6f9b7be56a7a72

All 2 comments

Unfortunately there is a bug in the driver registry, that _always_ looks for a docker binary...

However, you can install any old program - it doesn't have to be an actual docker client.

sudo cp /bin/true /usr/local/bin/docker

See https://github.com/kubernetes/minikube/issues/5549

Also, the suggestion is silly and should be fixed too. It should only suggest that for the Docker container runtime.

There are no regression tests for any runtimes other than Docker either, so that is why it was not working properly.

Seems that it got worse in 6276c1cb1da7529b1f8fad712f6f9b7be56a7a72

Was this page helpful?
0 / 5 - 0 ratings