[深度学习] docker image list request returned Internal Server Error for API route and version

chdlr 2024-06-25 17:37:02 阅读 66

在 powershell 里执行docker image list 报错

PS C:\Users\Thomas> docker image list

request returned Internal Server Error for API route and version http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/images/json, check if the server supports the requested API version

执行

C:\Users\Thomas>cmd.exe /k "C:\Program Files\Docker\Docker\resources\com.docker.diagnose.exe" check

Starting diagnostics

[2024-04-17T14:30:53.028434600Z][com.docker.diagnose.exe.ipc][I] ipc.NewClient: 19986db9-diagnose -> \\.\pipe\dockerBackendApiServer BackendAPI

[2024-04-17T14:30:53.040204600Z][com.docker.diagnose.exe.ipc][I] (5ffdbf0d) 19986db9-diagnose C->S BackendAPI POST /idle/make-busy

[2024-04-17T14:30:53.042473500Z][com.docker.diagnose.exe.ipc][I] (5ffdbf0d) 19986db9-diagnose C<-S 7393654c-BackendAPI POST /idle/make-busy (2.2689ms): 0xc00063a3d0

[2024-04-17T14:30:54.043514600Z][com.docker.diagnose.exe.ipc][I] (7d42eeac) 19986db9-diagnose C->S BackendAPI GET /idle

[2024-04-17T14:30:54.047628300Z][com.docker.diagnose.exe.ipc][I] (7d42eeac) 19986db9-diagnose C<-S 7393654c-BackendAPI GET /idle (2.8594ms): {"apisInFlight":{},"booted":false,"busyReason":["timed activities: map[/idle/make-busy:28.9961123s]"],"containers":0,"idle":"bool","kubernetesEnabled":false,"reduced":false,"services":0,"timedActivities":{"/idle/make-busy":"float64"},"vmPaused":false,"vmRunning":true,"vmStopped":false,"windowsContainers":false}

[PASS] DD0027: is there available disk space on the host?

[SKIP] DD0028: is there available VM disk space?

[SKIP] DD0002: does the bootloader have virtualization enabled?

[SKIP] DD0018: does the host support virtualization?

[PASS] DD0001: is the application running?

[SKIP] DD0022: is the Virtual Machine Platform Windows Feature enabled?

[SKIP] DD0021: is the WSL 2 Windows Feature enabled?

[PASS] DD0024: is WSL installed?

[FAIL] DD0025: are WSL distros installed? WSL Distribution docker-desktop is missing

[PASS] DD0026: is the WSL LxssManager service running?

[FAIL] DD0029: is the WSL 2 Linux filesystem corrupt? prereq failed: are WSL distros installed?

[FAIL] DD0035: is the VM time synchronized? prereq failed: are WSL distros installed?

[FAIL] DD0017: can a VM be started? prereq failed: are WSL distros installed?

[FAIL] DD0016: is the LinuxKit VM running? prereq failed: can a VM be started?

[FAIL] DD0011: are the LinuxKit services running? prereq failed: is the LinuxKit VM running?

[FAIL] DD0004: is the Docker engine running? prereq failed: are the LinuxKit services running?

[PASS] DD0015: are the binary symlinks installed?

[FAIL] DD0031: does the Docker API work? prereq failed: is the Docker engine running?

[PASS] DD0013: is the $PATH ok?

[FAIL] DD0003: is the Docker CLI working? prereq failed: is the Docker engine running?

[FAIL] DD0005: is the user in the docker-users group? prereq failed: is the LinuxKit VM running?

[FAIL] DD0038: is the connection to Docker working? prereq failed: is the Docker engine running?

[FAIL] DD0014: are the backend processes running? prereq failed: is the LinuxKit VM running?

[FAIL] DD0007: is the backend responding? prereq failed: are the backend processes running?

[FAIL] DD0009: is the vpnkit API responding? prereq failed: are the backend processes running?

[FAIL] DD0010: is the Docker API proxy responding? prereq failed: are the backend processes running?

[SKIP] DD0006: is the Docker Desktop Service responding?

[FAIL] DD0030: is the image access management authorized? prereq failed: is the Docker engine running?

[WARN] DD0033: does the host have Internet access? unable to fetch http://docker.com/

[PASS] DD0002: does the bootloader have virtualization enabled?

[PASS] DD0018: does the host support virtualization?

[PASS] DD0001: is the application running?

[PASS] DD0022: is the Virtual Machine Platform Windows Feature enabled?

[PASS] DD0021: is the WSL 2 Windows Feature enabled?

[PASS] DD0024: is WSL installed?

[WARN] DD0025: are WSL distros installed? WSL Distribution docker-desktop is missing

[PASS] DD0026: is the WSL LxssManager service running?

[WARN] DD0029: is the WSL 2 Linux filesystem corrupt? prereq failed: are WSL distros installed?

[WARN] DD0035: is the VM time synchronized? prereq failed: are WSL distros installed?

[WARN] DD0017: can a VM be started? prereq failed: are WSL distros installed?

[WARN] DD0016: is the LinuxKit VM running? prereq failed: can a VM be started?

[WARN] DD0011: are the LinuxKit services running? prereq failed: is the LinuxKit VM running?

[WARN] DD0004: is the Docker engine running? prereq failed: are the LinuxKit services running?

[PASS] DD0015: are the binary symlinks installed?

[WARN] DD0031: does the Docker API work? prereq failed: is the Docker engine running?

[WARN] DD0032: do Docker networks overlap with host IPs? prereq failed: does the Docker API work?

Please note the following 12 warnings:

1 : The check: does the host have Internet access?

Produced the following warning: unable to fetch http://docker.com/

If the host does not have Internet access then containers will also not have Internet access.

The lack of Internet access could be caused by

- physical disconnection: check your ethernet cable or Wifi network

- the local network firewall policy: check with your IT department if access to docker.com is expected to work

- a VPN (or lack of one): try again with or without the VPN running

2 : The check: are WSL distros installed?

Produced the following warning: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

3 : The check: are WSL distros installed?

Produced the following warning: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

4 : The check: is the WSL 2 Linux filesystem corrupt?

Produced the following warning: prereq failed: are WSL distros installed?

If the WSL 2 Linux filesystem is corrupt then Docker Desktop cannot start.

There is a known issue fixed in Windows Insider builds which can cause filesystem corruption, see:

https://github.com/microsoft/WSL/issues/5895 .

Try running "wsl --shutdown" to stop your WSL Virtual Machine. When it restarts it will

run a filesystem check and hopefully fix the problem.

5 : The check: are WSL distros installed?

Produced the following warning: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

6 : The check: is the VM time synchronized?

Produced the following warning: prereq failed: are WSL distros installed?

The VM time must be in sync with the host, otherwise Docker Desktop will not work correctly.

Ensure you are using a modern WSL 2 kernel (see "wsl --update"). If this problem persists,

try manually synchronizing the VM clock with "sudo hwclock -s".

7 : The check: can a VM be started?

Produced the following warning: prereq failed: are WSL distros installed?

The Docker engine runs inside a Linux VM. Therefore we must be able to start Virtual Machines.

8 : The check: is the LinuxKit VM running?

Produced the following warning: prereq failed: can a VM be started?

The Docker engine runs inside a Linux VM. Therefore the VM must be running.

9 : The check: are the LinuxKit services running?

Produced the following warning: prereq failed: is the LinuxKit VM running?

The Docker engine runs inside a Linux VM as a service. Therefore the services must have started.

10 : The check: is the Docker engine running?

Produced the following warning: prereq failed: are the LinuxKit services running?

The Docker engine manages all containers and images on the host. Check the dockerd.log to see why it failed to start.

11 : The check: does the Docker API work?

Produced the following warning: prereq failed: is the Docker engine running?

If the Docker API is not available from the host then Docker Desktop will not work correctly.

12 : The check: do Docker networks overlap with host IPs?

Produced the following warning: prereq failed: does the Docker API work?

If the subnet used by a Docker network overlaps with an IP used by the host, then containers

won't be able to contact the overlapping IP addresses.

Try configuring the IP address range used by networks: in your docker-compose.yml.

See https://docs.docker.com/compose/compose-file/compose-file-v2/#ipv4_address-ipv6_address

Please investigate the following 1 issue:

1 : The test: are WSL distros installed?

Failed with: WSL Distribution docker-desktop is missing

The Docker engine uses several WSL distributions. Therefore these must be installed.

参考:

https://www.cnblogs.com/rgqancy/p/17806019.html

【Docker Desktop】Windows11家庭版安装docker desktop和WSl2(Ubuntu22.04)并完成迁移,配置国内镜像_docker win11配置和使用-CSDN博客 



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。