解决docker容器因报错无法启动的问题,检查、修复容器错误并重启

news2024/10/2 14:21:40

问题复现

使用:

sudo docker ps -a

查看当前的docker容器:
在这里插入图片描述

我们想启动name为【docker-mongo】的这个容器,因此要执行

sudo docker start docker-mongo

但是执行后仍旧没有重启,大概率是重启的时候报错了,查看日志:

sudo docker logs -f docker-mongo

可以看到其中有这样的日志:

{"t":{"$date":"2022-12-29T00:35:32.551+00:00"},"s":"E",  "c":"NETWORK",  "id":23024,   "ctx":"initandlisten",
"msg":"Failed to unlink socket file",
"attr":
	{"path":"/tmp/mongodb-27017.sock",
	"error":"Operation not permitted"
	}
}

查到的解决方法是删除/tmp/mongodb-27017.sock文件即可。但是问题是我们无法启动docker,也无法进入到容器内部,所以就有两种解决方案:

  1. 在不启动容器的情况下,进入到容器的目录中,然后对文件做操作
  2. 在启动容器且不启动应用的情况下,把容器“夯住”,进入容器内部调试

这里我们使用第一种解决方案

解决方法

首先查看docker的这个容器在硬盘上的目录结构

sudo docker inspect docker-mongo

可以找到一段配置项:

"MergedDir": "/var/lib/docker/overlay2/457e851851b8ef6e1b56ebd89aaefab3133e8e1013adc59a98af72e6e5b93a51/merged",
"UpperDir": "/var/lib/docker/overlay2/457e851851b8ef6e1b56ebd89aaefab3133e8e1013adc59a98af72e6e5b93a51/diff",
"WorkDir": "/var/lib/docker/overlay2/457e851851b8ef6e1b56ebd89aaefab3133e8e1013adc59a98af72e6e5b93a51/work"

这便是容器与本地的地址映射(注意这个目录大概率不会与ID类似,即不会包含“32f8a297fb99”这个字段,因此需要手动查看目录与容器ID的对应关系),所以我们进入这个目录:

cd /var/lib/docker/overlay2/457e851851b8ef6e1b56ebd89aaefab3133e8e1013adc59a98af72e6e5b93a51

然后就可以找到与容器内文件相似的目录结构了,比如我想删除碍事的/tmp/mongodb-27017.sock文件,可以使用:

su # 变为管理员权限
cd /var/lib/docker/overlay2/457e851851b8ef6e1b56ebd89aaefab3133e8e1013adc59a98af72e6e5b93a51/diff
rm mongodb-27017.sock
exit # 退出root用户

这里根据自己的情况对文件进行操作,一般是配置错误导致的docker重启失败

然后就可以重启了:

sudo docker start docker-mongo
sudo docker ps


重启成功!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Boot骚操作-多数据源Service层封装

mysql, es, mongodb 三个数据源用配置文件方式连接,JPA只是正对dao做了封装,本文主要介绍如何对service层进行封装。 Spring Boot - 多个数据源Service层封装 类关系图 封装的一些配置 application.yml pom.xml 封装后使用 MySQL 动态数据访问 Mong…

坦克大战1.0,java时间处理机制

1.java 绘图坐标体系 1.1 坐标体系-介绍 下图说明了Java坐标系。坐标原点位于左上角,以像素为单位。在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。…

金融业务如何高性能传输数据

对系统要求高,通常按金融级标准设计。金融数据传输要求速度快,流量大,极强容灾。 案例分析 简化版券商算法交易平台对接交易所: 涉及场景多。既有事务数据,也有市场数据模型简单。只涉及到2个主体复杂度可选。连接交…

【结构型】装饰模式(Decorator)

目录装饰模式(Decorator)适用场景装饰模式实例代码(Java)装饰模式(Decorator) 动态地给一个对象添加一些额外的职责。就增加功能而言,装饰模式 (Decorator) 比生成子类更加灵活。 适用场景 在不影响其他对象的情况下,以动态、透…

2023让工作效率直线飞升

2022年马上就要过去,过去的一年,腾讯云HiFlow和众多腾讯系应用也帮助了许多企业完成数字化转型,许多没有代码基础的业务人员也能通过搭建工作流,高效的处理生活&工作的繁杂事务,时间精力节省50%。把时间花在更重要…

开源 | 携程机票跨端 Kotlin DSL 数据库框架 SQLlin

作者简介禹昂,携程机票移动端资深工程师,专注于 Kotlin 移动端跨平台领域,Kotlin 中文社区核心成员,图书《Kotlin 编程实践》译者。一、背景2022年9月 Kotlin 1.7.20 发布之后,Kotlin Multiplatform Mobile&#xff08…

【计算机图形学入门】笔记7:Shading着色1(光照与基本着色模型)

07Shading着色(光照与基本着色模型)1.深度缓冲Z-buffering1.画家算法:先把远处的东西画在屏幕上,再画近处的,从而近处物体覆盖远处物体。(油画家)2.深度缓冲2.Shading着色1.我们目前学了哪些知识…

CleanMyMacX2023系统清理优化工具使用评测

如果你的macbook有点年头空间不够开始卡顿了,或者你是windows用户刚转来的,我强烈建议你安装一个cleanmymac!Mac电脑清理是可以直接使用储存空间管理(关于本机->储存空间->管理)来清理,但是这里的其他…

Android开发笔记(一百九十)增强了日志功能的第二版Logcat

从Android Studio Dolphin开始,查看应用日志的Logcat全面升级,堪称Logcat 2.0版本。下面就让我们看看LogcatV2.0究竟带来了什么新特性吧。 对于Android Studio的老用户来说,小海豚版本新出的LogcatV2.0在用法上有不小的差异,一开始…

Fisher卡方全流程汇总

Fisher卡方 卡方检验研究数据的独立性,在分析样本量较少(比如小于40),也或者期望频数出现小于5时,此时使用fisher卡方检验较为适合。SPSSAU医学研究模块中的卡方检验时,有提供2*2即4表格时提供fisher卡方检…

魔方(14)133魔方、一阶鬼魔魔方、双心魔方

目录 133魔方 1,魔方三要素 2,复原方法 一阶鬼魔魔方 1,魔方三要素 2,复原方法 双心魔方 133魔方 1,魔方三要素 (1)组成部件 9个块,1个中心块,4个棱块&#xff…

ZYNQ - 以太网远程更新SD卡应用程序

写在前面 对于ZYNQ系列的板卡固化,可以通过JTAG接口,使用SDK固化到FLASH中,或者可将SD卡取出将SD卡中保存的固化工程进行修改,但在很多情况下,离线更新会很不方便,本文借鉴网上常见的远程更新QSPI FLASH的…

思维导图 制作

PPT e.g: WPS中ppt 新建 文本框一定要 在外框之内。 左键 全选中,就会出来如下。 可直接点居中,就不用浪费time调位置 全选中,右键,【组合】 形成整体,可复制到word中 选择性粘贴到word中 skill: 左键…

《Linux运维总结:Centos7.6源码安装单实例redis6.2.8》

一、部署redis服务 1.1、环境信息 环境信息如下: 主机IP操作系统Redis版本CPU架构192.168.1.191Centos7.66.2.8x86_641.2、二进制方式 1、安装环境依赖 [rootlocalhost ~]# yum -y install gcc2、安装包下载 [rootlocalhost ~]# wget https://download.redis.io…

Linux-线程(LWP)

文章目录线程线程概念进程今天的进程 vs之前的进程私有和共享资源实验验证线程的优点:线程的缺点:线程异常线程的用途:线程控制创建线程(1)先创建两个线程:链接时要引入第三方库。(2)创建多个线程:(3)线程的健壮性不强…

Pandas 替换 NaN 值

替换Pandas DataFram中的 NaN 值 问题 NaN 代表 Not A Number,是表示数据中缺失值的常用方法之一。它是一个特殊的浮点值,不能转换为 float 以外的任何其他类型。NaN 值是数据分析中的主要问题之一。为了得到理想的结果,对 NaN 进行处理是非…

LeetCode刷题复盘笔记—一文搞懂动态规划之53. 最大子数组和问题(动态规划系列第三十五篇)

今日主要总结一下动态规划的一道题目,53. 最大子数组和 题目:53. 最大子数组和 Leetcode题目地址 题目描述: 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素)&#…

成年人的崩溃一触即发,掌握学习能力才能突破认知结界,干货满满!

成年人的崩溃一触即发,掌握学习能力才能突破认知结界! 今年2月份(2022-02),从小红书上购买了知识博主【老明读书】,针对学习能力的讲解分析,真是干货满满!非常感谢老明,…

FPGA项目案例展示

MIPI视频拼接: 在无人机、智能驾驶中,摄像头多达十几路 为解决图像处理芯片(如海思、高通平台)的接口瓶颈 需要将多个摄像头合成一路处理。 SLVS-EC转MIPI SLVS-EC采集,LANE速率可达4.6G MIPI输出,速率2.…

基于ASP.net Mvc的超市管理系统

摘 要 网络的广泛应用给生活带来了十分的便利。所以把天美意超市管理与现在网络相结合,利用net语言建设天美意超市管理系统,实现天美意超市管理的信息化。则对于进一步提高天美意超市发展,丰富天美意超市管理系统能起到不少的促进作用。 天美…