解决docker指令卡住的场景之一

一、问题概述

本文档用于记录我在开发过程中遇到的一个docker使用问题,记录和分享于此。

该问题表现:

docker所以指令都卡住不返回,或者提示下面内容。

`Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?`。

发生环境:虚拟机Virtual Box + Linux ubuntu-18 4.15.0-20-generic #21-Ubuntu 

发生原因:在使用Windows10时,由于串口原因发生了4次蓝屏事件。

日志查看:

xxxxxx@ubuntu-18:~$ sudo journalctl -eu docker
9月 22 14:28:54 ubuntu-18 dockerd[2862]: time="2024-09-22T14:28:54+08:00" level=info msg="shim docker-containerd-shim started" address="/containerd-shim/moby/df765b43add0b445562203c020d6389
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.051941623+08:00" level=info msg="No non-localhost DNS nameservers are left in resolv.conf. Using default external servers:
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.052345154+08:00" level=info msg="IPv6 enabled; Adding default IPv6 external servers: [nameserver 2001:4860:4860::8888 name
9月 22 14:28:55 ubuntu-18 dockerd[2862]: time="2024-09-22T14:28:55+08:00" level=info msg="shim docker-containerd-shim started" address="/containerd-shim/moby/52c8d58b7dd87312ab3b11fa91606db
9月 22 14:28:55 ubuntu-18 dockerd[2862]: time="2024-09-22T14:28:55+08:00" level=info msg="shim docker-containerd-shim started" address="/containerd-shim/moby/1cad9287079b11726af87f6ae2fdfaf
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.382099670+08:00" level=info msg="No non-localhost DNS nameservers are left in resolv.conf. Using default external servers:
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.382135266+08:00" level=info msg="IPv6 enabled; Adding default IPv6 external servers: [nameserver 2001:4860:4860::8888 name
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.409340048+08:00" level=info msg="No non-localhost DNS nameservers are left in resolv.conf. Using default external servers:
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.409374464+08:00" level=info msg="IPv6 enabled; Adding default IPv6 external servers: [nameserver 2001:4860:4860::8888 name
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.970998310+08:00" level=info msg="No non-localhost DNS nameservers are left in resolv.conf. Using default external servers:
9月 22 14:28:55 ubuntu-18 dockerd[2844]: time="2024-09-22T14:28:55.971133054+08:00" level=info msg="IPv6 enabled; Adding default IPv6 external servers: [nameserver 2001:4860:4860::8888 name
9月 22 14:28:56 ubuntu-18 dockerd[2844]: panic: runtime error: invalid memory address or nil pointer dereference
9月 22 14:28:56 ubuntu-18 dockerd[2844]: [signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x5647f2ecb0af]
9月 22 14:28:56 ubuntu-18 dockerd[2844]: goroutine 218 [running]:
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/vendor/github.com/docker/libnetwork.(*endpoint).addServiceInfoToCluster(0xc4200a31e0, 0xc42068de00, 0x0, 0x0)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/agent.go:586 +0xbf
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/vendor/github.com/docker/libnetwork.(*sandbox).EnableService(0xc42068de00, 0x0, 0x0)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/vendor/github.com/docker/libnetwork/sandbox.go:686 +0x18f
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/daemon.(*Daemon).ActivateContainerServiceBinding(0xc420086480, 0xc4201c2cc0, 0x10, 0x0, 0x0)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/daemon/container_operations.go:1087 +0x89
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/daemon.(*Daemon).connectToNetwork(0xc420086480, 0xc4202f9200, 0x5647f369ff6d, 0x6, 0xc4205803c0, 0x5647f4cb0400, 0x0, 0x0)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/daemon/container_operations.go:796 +0xa3e
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/daemon.(*Daemon).allocateNetwork(0xc420086480, 0xc4202f9200, 0x0, 0x0)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/daemon/container_operations.go:540 +0xbb3
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/daemon.(*Daemon).initializeNetworking(0xc420086480, 0xc4202f9200, 0x0, 0x0)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/daemon/container_operations.go:922 +0xa2
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/daemon.(*Daemon).containerStart(0xc420086480, 0xc4202f9200, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/daemon/start.go:150 +0x2cf
9月 22 14:28:56 ubuntu-18 dockerd[2844]: github.com/docker/docker/daemon.(*Daemon).restore.func2(0xc420ab67e0, 0xc420086480, 0xc4201179b0, 0xc4202f9200, 0xc4204d2420)
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/daemon/daemon.go:401 +0x30c
9月 22 14:28:56 ubuntu-18 dockerd[2844]: created by github.com/docker/docker/daemon.(*Daemon).restore
9月 22 14:28:56 ubuntu-18 dockerd[2844]:         /go/src/github.com/docker/docker/daemon/daemon.go:381 +0x12e5
9月 22 14:28:56 ubuntu-18 systemd[1]: docker.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
9月 22 14:28:56 ubuntu-18 systemd[1]: docker.service: Failed with result 'exit-code'.
9月 22 14:28:56 ubuntu-18 systemd[1]: Failed to start Docker Application Container Engine.
9月 22 14:28:56 ubuntu-18 systemd[1]: docker.service: Scheduled restart job, restart counter is at 3.
9月 22 14:28:56 ubuntu-18 systemd[1]: Stopped Docker Application Container Engine.
9月 22 14:28:56 ubuntu-18 systemd[1]: docker.service: Start request repeated too quickly.
9月 22 14:28:56 ubuntu-18 systemd[1]: docker.service: Failed with result 'exit-code'.
9月 22 14:28:56 ubuntu-18 systemd[1]: Failed to start Docker Application Container Engine.

二、解决办法

本人对docker的认识也不多,只是会一些操作和整体的东西。先是重启了几次虚拟机,和1次PC电脑,确认重启无法恢复后,就在网上搜索答案。

网上有类似的问题,可能每个人的形成该问题的原因都有差异。看到了3种解决办法。

方法1:重启一下docker服务就好了。

sudo systemctl restart docker.service

方法2:删除掉旧的docker然后,重新装新的docker。

systemctl stop docker
rm -rf /var/lib/docker
systemctl start dockeruninstall/install docker

方法3:删除docker的运行文件,重新启动docker。

# danger, read the entire text around this code before running
# you will lose data
sudo -s
systemctl stop docker
rm -rf /var/lib/docker
systemctl start docker
exit

我尝试了方法1,没有解决我的问题,方法2我又觉得麻烦。直接尝试方法3。方法3解决了我的问题。

我在进行方法3操作的时候,`rm -rf /var/lib/docker`操作是会有些资源正在使用或挂载状态。我是先将docker 服务disable掉,重启虚拟机,然后再删,就很流畅。删除后再将docker服务enable,再次重启虚拟机。测试docker服务正常,就是如注释所讲,你之前的docker镜像和容器全部丢失了。如果你接受不了,你就提前想想办法。

本人的操作流程为:

# danger, read the entire text around this code before running
# you will lose datasudo systemctl disable docker#重启虚拟机rm -rf /var/lib/docker
sudo systemctl enable docker# 再次重启虚拟机

三、结论

        由于宿主机Windows蓝屏异常,导致正在运行的docker容器异常。导致docker服务异常,所有的docker 指令卡住。解决办法就是删除掉之前docker产生的数据(容器和镜像),重新运行即可。这样就丢失掉了之前的容器和镜像。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/429485.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

axure的下载,激活,汉化全过程,多图

1.前言 下载地址:https://pan.baidu.com/s/12xo1mJer2hmBK7QrYM5v-Q?pwd0107#list/path%2Fcsdn%E5%85%B1%E4%BA%AB%E6%96%87%E4%BB%B6 源文章:https://blog.csdn.net/iwanttostudyc/article/details/123773796?ops_request_misc%257B%2522request%25…

STM32 单片机最小系统全解析

STM32 单片机最小系统全解析 本文详细介绍了 STM32 单片机最小系统,包括其各个组成部分及设计要点与注意事项。STM32 最小系统在嵌入式开发中至关重要,由电源、时钟、复位、调试接口和启动电路等组成。 在电源电路方面,采用 3.3V 直流电源供…

.Net网络通信组件 - TouchSocket

文章目录 .Net网络通信组件 - TouchSocket1、新建.Net8控制台项目2、Nuget安装TouchSocket组件3、编写服务端代码4、编写客户端代码5、编写Program代码6、运行效果7、日志组件(NLog)参考我的另一篇博客 .Net网络通信组件 - TouchSocket 1、新建.Net8控制…

PyCharm的使用

PyCharm的入门使用教程 下载和安装PyCharm: 首先,访问JetBrains官方网站(https://www.jetbrains.com/pycharm/)下载PyCharm的最新版本。根据您的操作系统选择合适的版本进行下载。 安装完成后,打开PyCharm。 创建新…

深度学习03-神经网络02-激活函数

可以使用这个进行跳转链接​​​​​​​http://playground.tensorflow.org/#activationrelu&batchSize11&datasetspiralDatasetreg-gauss&learningRate0.01ularizationRate0.1&noise0&networkShape7,5,4,3,2&seed0.54477&showTestDatafalse&d…

【Unity设计模式】Unity MVC/MVP架构介绍,及MVC/MVP框架的简单应用

文章目录 什么是MVC?MVC眼花缭乱设计图MVP和MVC最经典的MVC的业务流程Unity MVC 框架示例1. 创建项目结构2. 实现模型3. 实现视图4. 实现控制器5. 使用示例 总结参考完结 什么是MVC? MVC自1982年被设计出来,至今都有着很大比重的使用率&…

HCIA--实验十八:配置全局DCHP

一、实验内容 1.需求/要求: 使用一台5700交换机和一台PC,实现全局DHCP的配置,并且自定义配置网关,配置DNS。 二、实验过程 1.拓扑图: 2.步骤: 1.SW1激活DHCP服务,创建vlan10 2.SW1给vlan10添加ip地址 …

Transformer模型-7- Decoder

概述 Decoder也是N6层堆叠的结构,每层被分3层: 两个注意力层和前馈网络层,同Encoder一样在主层后都加有Add&Norm,负责残差连接和归一化操作。 Encoder与Decoder有三大主要的不同: 第一层 Masked Multi-Head Attention: 采用…

Linux 动静态库

目录 一.静态库 1.理解静态库 a.什么是静态库? b.创建静态库的理论? 2.打包静态库 3.静态库的使用方法 a.头文件找不着 b.链接报错——库函数文件找不着 4.将静态库文件写到系统目录下 a.直接拷贝 b.建立软链接 二.动态库 1.什么是动态库&am…

通过标签实现有序:优化你的 FastAPI 生成的 TypeScript 客户端

在软件开发的世界里,API 客户端代码的质量直接影响着应用程序的性能和可维护性。随着项目规模的扩大,自动化生成的代码往往变得臃肿且难以管理。但幸运的是,通过一系列的优化策略,我们可以显著提升这些代码的优雅与效能。在本文中…

C#如何把写好的类编译成dll文件

1 新建一个类库项目 2 直接改写这个Class1.cs文件 3 记得要添加Windows.Forms引用 4 我直接把在别的项目中做好的cs文件搞到这里来,连文件名也改了(FilesDirectory.cs),这里using System.Windows.Forms不会报错,因为前…

用Qt 对接‌百度AI平台

很多同学想利用几大模型AI弄点东西,但又不知道如何去介入??最近帮同学弄点东西,刚好要接入到AI平台,就顺便研究了一下,并记录下来。 首先我们选择的 AI模型是百度的,然后注册,申请密…

8. 尝试微调LLM大型语言模型,让它会写唐诗

这篇文章与03. 进阶指南:自定义 Prompt 提升大模型解题能力一样,本质上是专注于“用”而非“写”,你可以像之前一样,对整体的流程有了一个了解,尝试调整超参数部分来查看对微调的影响。 这里同样是生成式人工智能导论&…

13年计算机考研408-数据结构

解析: 这个降序链表不影响时间复杂度,因为是链表,所以你想要升序就使用头插法,你想要降序就使用尾插法。 然后我们来分析一下最坏的情况是什么样的。 因为m和n都是两个有序的升序序列。 如果刚好m的最大值小于n的最小值&#xff0…

消息中间件---Kafka

一、什么是Kafka? Kafka是一个分布式流处理平台,类似于消息队列或企业消息传递系统; 流处理事什么呢? 流处理就是数据处理工作流,本质上是一种计算机编程范例。流处理是对接收到的新数据事件的连续处理。‌它涉及对从生产者到消…

10年408考研真题-数据结构

23.[2010统考真题]若元素 a,b,c,d,e,f 依次进栈,允许进栈、退栈操作交替进行,但不允许连续3次进行退栈操作,不可能得到的出栈序列是(D)。 A.dcebfa B.cbdaef C.bcaefd D.afedcb 解析: 直接看D选项&#xff0…

Python | Leetcode Python题解之第420题强密码检验器

题目: 题解: class Solution:def strongPasswordChecker(self, password: str) -> int:n len(password)has_lower has_upper has_digit Falsefor ch in password:if ch.islower():has_lower Trueelif ch.isupper():has_upper Trueelif ch.isdi…

微服务保护之熔断降级

在微服务架构中,服务之间的调用是通过网络进行的,网络的不确定性和依赖服务的不可控性,可能导致某个服务出现异常或性能问题,进而引发整个系统的故障,这被称为 微服务雪崩。为了防止这种情况发生,常用的一些…

pytorch实现RNN网络

目录 1.导包 2. 加载本地文本数据 3.构建循环神经网络层 4.初始化隐藏状态state 5.创建随机的数据,检测一下代码是否能正常运行 6. 构建一个完整的循环神经网络 7.模型训练 8.个人知识点理解 1.导包 import torch from torch import nn from torch.nn imp…

Python画笔案例-057 绘制蜘蛛网

1、绘制蜘蛛网 通过 python 的turtle 库绘制 蜘蛛网,如下图: 2、实现代码 绘制蜘蛛网,以下为实现代码: """蜘蛛网.py """ import turtledef draw_circle(pos,r):"""p