docker 无法在本地找到图像'hello-world:latest'

pdtvr36n  于 2023-03-07  发布在  Docker
关注(0)|答案(5)|浏览(363)

我已经按照Ubuntu的官方安装步骤在我的机器上安装了Docker。在验证步骤中它失败了。
当我运行命令时:docker运行hello-world时会抛出以下错误消息:

Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get https://registry- 
1.docker.io/v2/: net/http: request canceled while waiting for 
connection (Client.Timeout exceeded while awaiting headers).
See 'docker run --help'.

以下是我的机器的Docker详细信息。

Client: Docker Engine - Community
Version:           19.03.6
API version:       1.40
Go version:        go1.12.16
Git commit:        369ce74a3c
Built:             Thu Feb 13 01:27:49 2020
OS/Arch:           linux/amd64
Experimental:      false
Got permission denied while trying to connect to the Docker daemon socket at 
unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/version: dial unix 
/var/run/docker.sock: connect: permission denied

如果我尝试Docker信息,我得到以下消息:
客户端:调试模式:假的
服务器:错误:尝试连接到unix:///var/run/docker. sock上的Docker守护程序套接字时权限被拒绝:获取http://%2Fvar%2Frun%2Fdocker.sock/v1.40/info:拨入unix/var/run/docker。套接字:连接:权限被拒绝错误正在打印信息

t2a7ltrp

t2a7ltrp1#

您可以简单地通过以下方式进行拉取和测试:

$ sudo docker pull hello-world
$ sudo docker run hello-world
lfapxunr

lfapxunr2#

首先检查DOCKER是否正在使用
sudo服务停靠状态
如果它正在运行,那么您可能错过了将您的用户添加到docker组。要确认这一点,请尝试使用sudo的docker命令
如果您不想每次都使用sudo,请按照以下指南将您的用户添加到Docker组
Step 2 — Executing the Docker Command Without Sudo (Optional)
注意:您不能在WSL中运行Docker,即Windows上的Ubuntu,所以您需要安装Docker for Windows,以下指南提供了在WSL中使用Docker的完整步骤。
Setting Up Docker for Windows and WSL to Work Flawlessly

qv7cva1a

qv7cva1a3#

docker的安装后步骤可能没有执行,基本上需要将当前登录使用的添加到docker组中。
只需按照Docker文档-https://docs.docker.com/engine/install/linux-postinstall/中的说明操作即可
FYA-只有在重新启动ubuntu之后才会进行组成员资格评估(在18.04中)。所以,在按照上面的链接操作之后,重新启动ubuntu机器。然后尝试docker images,报告的权限问题应该会得到解决。

lztngnrs

lztngnrs4#

当我把ubuntu19.04升级到19.10然后重新安装时,这个问题已经解决了。

emeijp43

emeijp435#

我有类似的问题,而试图修复以下错误,
root@neno88:/home/mohan #docker run hello-world无法在本地找到图像"hello-world:latest" docker:守护程序的错误响应:获取https://registry-1.docker.io/v2/:拨号tcp:在10.187.215.112上查找www.example.com:registry-1.docker.io读取:连接被拒绝。 read udp 10.187.215.103:58777->10.187.215.112:53: read: connection refused.
所以,错误是由于代理在我的企业设置,守护进程请求被拒绝通过代理
错误尝试修复它,(这导致了如上所述的错误。)我已经添加了www.example.com IP到/etc/hosts,但它导致了类似的错误,在这个StackOverflow在这里。registry-1.docker.io ip to the /etc/hosts, but it caused the similar error as in this StackOverflow here.
root@neno88:/home/mohan #docker run hello-world无法在本地找到图像"hello-world:latest" docker:守护程序的错误响应:获取https://registry-1.docker.io/v2/:net/http:请求在等待连接时被取消(客户端。等待标头时超时)。请参阅"docker run--help"。root@neno88:/home/mohan #
正确步骤:如何修复它,
1.只需将您的代理详细信息添加到/etc/systemd/system/docker. service. d/proxy. conf(文件夹docker. service. d可能不存在,因此请先创建该目录)
1.添加代理详细信息后,使用以下命令检查守护进程是否成功看到/读取您的环境变量。
$sudo systemctl守护进程-重新加载
$sudo systemctl重新启动对接器
$systemctl show--属性=环境停靠器
参考本文档:https://www.serverlab.ca/tutorials/containers/docker/how-to-set-the-proxy-for-docker-on-ubuntu/

相关问题