docker安装容器的时候,报错Error response from daemon: dial unix /run/containerd ... connection refused

一、问题描述

docker安装容器的时候,报错Error response from daemon: dial unix /run/containerd/s/28086232b7ff6574d60911694c88bac5557ce09ff7f867821e136716cbc1a9e6: connect: connection refused: unknown.

我们在升级Metersphere的时候,发现在images都已下载正常,但是启动容器的时候报错。
docker安装容器的时候,报错Error response from daemon: dial unix /run/containerd ... connection refused_第1张图片

二、问题排查

1、走过的弯路

怀疑是docker环境配置的问题,因为我不久修改过/etc/docker/daemon.json。
但是回过头来想,不对啊,Image镜像都下载成功了呀。。

[root@k8snode1 ~]# docker images
REPOSITORY                                                        TAG                            IMAGE ID       CREATED         SIZE
registry.cn-qingdao.aliyuncs.com/metersphere/workstation          v2.10.2-lts                    33768a020031   6 days ago      576MB
registry.cn-qingdao.aliyuncs.com/metersphere/test-track           v2.10.2-lts                    230aa5d1e4f9   6 days ago      615MB
registry.cn-qingdao.aliyuncs.com/metersphere/system-setting       v2.10.2-lts                    68bd068c4400   6 days ago      580MB
registry.cn-qingdao.aliyuncs.com/metersphere/report-stat          v2.10.2-lts                    6c9af1431eff   6 days ago      578MB
registry.cn-qingdao.aliyuncs.com/metersphere/project-management   v2.10.2-lts                    db5cd5dab9ad   6 days ago      617MB
registry.cn-qingdao.aliyuncs.com/metersphere/performance-test     v2.10.2-lts                    1bed1e5054fa   6 days ago      581MB
registry.cn-qingdao.aliyuncs.com/metersphere/api-test             v2.10.2-lts                    393a521be529   6 days ago      652MB
registry.cn-qingdao.aliyuncs.com/metersphere/gateway              v2.10.2-lts                    c01e39dc6679   6 days ago      381MB
registry.cn-qingdao.aliyuncs.com/metersphere/ui-test              v2.10.2-lts                    ee06c689c0fe   6 days ago      681MB
registry.cn-qingdao.aliyuncs.com/metersphere/node-controller      v2.10.2-lts                    6016d6ddad97   6 days ago      574MB
registry.cn-qingdao.aliyuncs.com/metersphere/eureka               v2.10.2-lts                    2f151ac0f719   6 days ago      313MB
registry.cn-qingdao.aliyuncs.com/metersphere/data-streaming       v2.10.2-lts                    c580c457b8cf   6 days ago      357MB
registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master        5.5-ms5-jdk17                  0cdbec9c44f8   6 weeks ago     650MB
registry.cn-qingdao.aliyuncs.com/metersphere/mysql                8.0.33                         8189e588b0e8   2 months ago    564MB
registry.cn-qingdao.aliyuncs.com/metersphere/minio                RELEASE.2023-04-13T03-08-07Z   8efbd3d7f65f   2 months ago    256MB
registry.cn-qingdao.aliyuncs.com/metersphere/node-chromium        4.8.3                          4317e2094cdd   2 months ago    1.62GB
registry.cn-qingdao.aliyuncs.com/metersphere/node-firefox         4.8.3                          f2120b028da1   2 months ago    1.4GB
registry.cn-qingdao.aliyuncs.com/metersphere/selenium-hub         4.8.3                          751b89b7b366   2 months ago    430MB
registry.cn-qingdao.aliyuncs.com/metersphere/kafka                3.4.0                          d7b26d3aabcf   4 months ago    551MB
registry.cn-qingdao.aliyuncs.com/metersphere/prometheus           v2.42.0                        8cfcb66f4364   4 months ago    232MB
registry.cn-qingdao.aliyuncs.com/metersphere/node-exporter        v1.5.0                         0da6a335fe13   7 months ago    22.5MB
registry.cn-qingdao.aliyuncs.com/metersphere/redis                6.2.6                          f1b6973564e9   17 months ago   113MB
portainer/portainer                                               latest                         580c0e4e98b0   2 years ago     79.1MB

我仅仅使用docker pull portainer/portainer 也是能够下载的,证明非docker配置的问题。

另外我也对docker进行了重启。

systemctl daemon-reload && systemctl restart docker
  • docker ps
    没有一个运行中的容器。。。

2、安装portainer还是报错

Error response from daemon: dial unix /run/containerd/s/28086232b7ff6574d60911694c88bac5557ce09ff7f867821e136716cbc1a9e6: connect: connection refused: unknown.

3、寻求chatgpt的帮助

上面都是docker问题排查的常规手段,比较盲目。
其实,这里它是直指网络问题,非下载镜像的外网网络问题。

该错误通常表示Docker无法与Containerd通信。Containerd是Docker的底层容器运行时。

所以,应该是容器运行时故障:Containerd可能遇到了问题导致无法连接。你可以尝试重启Containerd服务,命令如下:

systemctl restart containerd

4、补充说明

如果以上方法都没有解决问题,可能存在其他底层问题或配置冲突。你可以查看Docker和Containerd的日志文件,以获取更多详细的错误信息。通常情况下,这些日志文件位于/var/log目录下的docker和containerd子目录中。

5、再次安装portainer成功(先删除容器名prtainer)

[root@k8snode1 log]# docker run -d -p 9900:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer docker.io/portainer/portainer
docker: Error response from daemon: Conflict. The container name "/prtainer" is already in use by container "4cc6b4d7a9b1233ce4c1c9c0a1937a1828ede97b0744806e3bd839df49afc62b". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'.

[root@k8snode1 log]# docker rm -f `docker ps -aq`
4cc6b4d7a9b1

[root@k8snode1 log]# docker run -d -p 9900:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer docker.io/portainer/portainer
02042d719165cf4f59a465cbe2d6e2045c22af0408879f2b54a2dd0419fc7dd4

[root@k8snode1 log]# docker ps
CONTAINER ID   IMAGE                 COMMAND        CREATED         STATUS         PORTS                                       NAMES
02042d719165   portainer/portainer   "/portainer"   5 seconds ago   Up 5 seconds   0.0.0.0:9900->9000/tcp, :::9900->9000/tcp   prtainer

三、总结

现在有chatgpt,之前我们遇到问题都是google/baidu,从上面的这个例子,也可以一定程度地看出孰优孰劣。

经过重启containerd,解决了docker网络通讯问题。容器也都启动成功!!!

你可能感兴趣的:(docker,unix,容器)