在Docker驱动的Windows 10中无法启动minikube



我第一次尝试在我的笔记本电脑上运行Minikube v1.19.0,使用Docker作为驱动程序,但是运气不好。下面是执行日志:

PS C:Users______kubernetes> minikube start --driver=docker --alsologtostderr
I0916 19:01:44.059272   20464 out.go:278] Setting OutFile to fd 96 ...
I0916 19:01:44.059272   20464 out.go:291] Setting ErrFile to fd 100...
W0916 19:01:44.091562   20464 root.go:292] Error reading config file at C:Usersproskos.minikubeconfigconfig.json: open C:Usersproskos.minikubeconfigconfig.json: The system cannot find the file specified.
I0916 19:01:44.097634   20464 out.go:285] Setting JSON to false
I0916 19:01:44.110479   20464 start.go:108] hostinfo: {"hostname":"--------","uptime":118298,"bootTime":1631689806,"procs":291,"os":"windows","platform":"Microsoft Windows 10 Enterprise","platformFamily":"Standalone Workstation","platformVersion":"10.0.18363 Build 18363","kernelVersion":"10.0.18363 Build 18363","kernelArch":"x86_64","virtualizationSystem":"","virtualizationRole":"","hostId":"---------------"}
W0916 19:01:44.110479   20464 start.go:116] gopshost.Virtualization returned error: not implemented yet
I0916 19:01:44.113153   20464 out.go:157] 😄  minikube v1.19.0 on Microsoft Windows 10 Enterprise 10.0.18363 Build 18363
😄  minikube v1.19.0 on Microsoft Windows 10 Enterprise 10.0.18363 Build 18363
I0916 19:01:44.116296   20464 driver.go:322] Setting default libvirt URI to qemu:///system
W0916 19:01:50.237519   20464 docker.go:108] docker version returned error: deadline exceeded running "docker version --format {{.Server.Os}}-{{.Server.Version}}": exit status 1
I0916 19:01:50.244288   20464 out.go:157] ✨  Using the docker driver based on user configuration
✨  Using the docker driver based on user configuration
I0916 19:01:50.244288   20464 start.go:276] selected driver: docker
I0916 19:01:50.244810   20464 start.go:718] validating driver "docker" against <nil>
I0916 19:01:50.244810   20464 start.go:729] status for docker: {Installed:true Healthy:false Running:false NeedsImprovement:false Error:exit status 1
deadline exceeded running "docker version --format {{.Server.Os}}-{{.Server.Version}}"
k8s.io/minikube/pkg/minikube/registry/drvs/docker.status
/app/pkg/minikube/registry/drvs/docker/docker.go:104
k8s.io/minikube/pkg/minikube/registry.Status
/app/pkg/minikube/registry/global.go:140
k8s.io/minikube/pkg/minikube/driver.Status
/app/pkg/minikube/driver/driver.go:305
k8s.io/minikube/cmd/minikube/cmd.selectDriver
github.com/spf13/cobra.(*Command).execute
/go/pkg/mod/github.com/spf13/cobra@v1.1.3/command.go:856
github.com/spf13/cobra.(*Command).ExecuteC
/go/pkg/mod/github.com/spf13/cobra@v1.1.3/command.go:960
github.com/spf13/cobra.(*Command).Execute
/go/pkg/mod/github.com/spf13/cobra@v1.1.3/command.go:897
k8s.io/minikube/cmd/minikube/cmd.Execute
/app/cmd/minikube/cmd/root.go:156
main.main
/app/cmd/minikube/main.go:82
runtime.main
/usr/local/go/src/runtime/proc.go:225
runtime.goexit
/usr/local/go/src/runtime/asm_amd64.s:1371 Reason:PROVIDER_DOCKER_DEADLINE_EXCEEDED Fix:Restart the Docker service Doc:https://minikube.sigs.k8s.io/docs/drivers/docker/}
I0916 19:01:50.250032   20464 out.go:157]
W0916 19:01:50.250390   20464 out.go:222] 💣  Exiting due to PROVIDER_DOCKER_NOT_RUNNING: deadline exceeded running "docker version --format -": exit status 1
💣  Exiting due to PROVIDER_DOCKER_NOT_RUNNING: deadline exceeded running "docker version --format -": exit status 1
W0916 19:01:50.250390   20464 out.go:222] 💡  Suggestion: Restart the Docker service
💡  Suggestion: Restart the Docker service
W0916 19:01:50.250924   20464 out.go:222] 📘  Documentation: https://minikube.sigs.k8s.io/docs/drivers/docker/
📘  Documentation: https://minikube.sigs.k8s.io/docs/drivers/docker/
I0916 19:01:50.252904   20464 out.go:157]

Docker桌面服务已经启动并运行。重新启动Docker无法解决问题。以下是我安装Docker桌面的详细信息:

PS C:Users______kubernetes> docker version
API version:       1.41
Go version:        go1.16.6
Git commit:        3967b7d
Built:             Fri Jul 30 19:58:50 2021
OS/Arch:           windows/amd64
Context:           default
Experimental:      true
Server: Docker Engine - Community
Engine:
Version:          20.10.8
API version:      1.41 (minimum version 1.12)
Go version:       go1.16.6
Git commit:       75249d8
Built:            Fri Jul 30 19:52:10 2021
OS/Arch:          linux/amd64
Experimental:     false
containerd:
Version:          1.4.9
GitCommit:        e25210fe30a0a703442421b0f60afac609f950a3
runc:
Version:          1.0.1
GitCommit:        v1.0.1-0-g4144b63
docker-init:
Version:          0.19.0
GitCommit:        de40ad0

最后,我的Docker Desktop安装配置为运行Linux容器:

docker info --format '{{.OSType}}'
linux

你能帮我找出为什么Minikube不能和Docker通信吗?

依次尝试以下三个命令:

  1. minikube config set driver docker
  2. minikube delete
  3. minikube start --driver=docker

我可能错了,但在我个人看来,这是一个docker版本的问题。

当docker服务正在运行时,出现这样的错误是不正常的。

status for docker: {Installed:true Healthy:false Running:false NeedsImprovement:false Error:exit status 1
deadline exceeded running "docker version --format {{.Server.Os}}-{{.Server.Version}}"
and 
Exiting due to PROVIDER_DOCKER_NOT_RUNNING: deadline exceeded running "docker version --format -": exit status 1
💣  Exiting due to PROVIDER_DOCKER_NOT_RUNNING: deadline exceeded running "docker version --format -": exit status 1

我的建议:

  1. docker系统修剪完全删除docker缓存,图像等
  2. 完全删除minikube
  3. 现在有2个选项。尝试再次启动minikube --driver-docker或卸载docker并安装以下1-2个版本。

最新更新