Docker无法stop或者rm指定容器

Docker无法stop或者rm指定容器

今日准备重启一下docker 容器部署的 Nginx 时,使用的命令是
docker exec -it ir-nginx nginx -s reload
结果发现无法重启报错
然后想着关闭再启动,结果发现
docker restart 、docker stop 、docker kill 、docker exec
都不行
于是用systemctl stop docker再 systemctl start docker
虽然命令可以执行成功,但是Nginx那个容器还是不能关闭、重启

执行 docker restart
报错记录的为

OCI runtime exec failed: exec failed: json: cannot unmarshal number into Go struct field CompatState.init_process_start of type string: unknown

于是想着再复制一个yml脚本(弄一个新的docker),改了一下里面的信息
在这里插入图片描述

再执行 docker-compose -f /data/compose/nginx-arm64-v2.yml up -d

报错记录的为

Error response from daemon: Cannot restart container f8ccd87c9714: Cannot kill container f8ccd87c97147abfdf8d3e11ed20d91f2a719dc249ce4bc37a32923689e0787c: unknown error after kill: runc did not terminate sucessfully: json: cannot unmarshal number into Go struct field CompatState.init_process_start of type string

里面有个 f8ccd87c97147abfdf8d3e11ed20d91f2a719dc249ce4bc37a32923689e0787c 的id
(后续:往后就直接执行原来的yml,关键是要把这个特别长的id拿到)

于是想查找与容器ID相关的文件或套接字,把它kill掉

lsof | grep "f8ccd87c97147abfdf8d3e11ed20d91f2a719dc249ce4bc37a32923689e0787c"

结果查出一大堆数据,不可能一个一个kill吧

于是使用 docker inspect 和 awk 来获取并杀死容器主进程PID

# 获取容器主进程的PID  
PID=$(docker inspect -f '{{.State.Pid}}' f8ccd87c97147abfdf8d3e11ed20d91f2a719dc249ce4bc37a32923689e0787c)  
  
# 杀死该PID(请谨慎使用)  
kill $PID

该操作可以直接在控制台执行

在同一个 shell 会话中连续执行这两个命令时,第二个命令能够“知道”它的 PID 来自于上一条命令的记录,因为第一个命令的输出被临时存储(关闭终端窗口或退出 shell 会话时,变量就会消失)在了 PID 变量中,并且这个变量在后续的命令中是可以被引用的。

然后发现通过
docker ps (查看"正在运行"的容器) ,看不到那个容器了
通过 docker ps -a 可以看到,表示已经被关闭了
于是再把这个容器给删除了
docker rm -f ir-nginx

最后再执行(这个yml‘脚本是我自己的,你们用你们自己的)

docker-compose -f /data/compose/nginx-arm64.yml up -d

验证了一下重启命令,发现没问题了。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

STM32-15-DMA

STM32-01-认识单片机 STM32-02-基础知识 STM32-03-HAL库 STM32-04-时钟树 STM32-05-SYSTEM文件夹 STM32-06-GPIO STM32-07-外部中断 STM32-08-串口 STM32-09-IWDG和WWDG STM32-10-定时器 STM32-11-电容触摸按键 STM32-12-OLED模块 STM32-13-MPU STM32-14-FSMC_LCD 文章目录 STM…

基础—SQL—DQL(数据查询语言)条件查询

一、DQL—语法 SELECT 字段列表 FROM 表名 WHERE 条件列表; 注意:条件列表可以是一个,也可以是多个。 二、条件列表的一些构建形式 注意: 1、BETWEEN ... AND ... (between 后面跟最小值,and 后面跟最大值&#xff0…

VxWorks PCI驱动

1 概述 PCI接口是一种DMA接口,通过DMA接口,CPU和外设能够进行内存的共享,这样CPU访问外设时只需要访问计算机系统的内存就可以了,这样做的一个重要的目的就是增加外部设备的自主性,在外部设备工作时可以不需要CPU的参与…

《QT从基础到进阶·四十一》无法解析的外部符号及生成事件加入QT打包命令报错问题

其他无法解析的外部符号: 无法解析的外部符号 "public: virtual struct QMetaObject const * __cdecl ML_AddinManger::metaObject(void)const "… 无法解析的外部符号 “public: virtual void * __cdecl ML_AddinManger::qt_metacast(char const *)” (?…

DynamiCrafter ComfyUI 教程 | 对图片转视频的效果进行精细化控制

近日,由北大、腾讯AI Lab联合推出的 AI 视频生成工具 DynamiCrafter 一经上线便引起了巨大反响。只需要输入一张普普通通的静态图,加上几句简单的文字引导,瞬间就能生成超逼真的动态视频,简直不要太厉害! 静态图 fire…

数据结构汇总

等同于: 旋转的时候忽略Nil,选装完再加上。

小华半导体MCU方案选型和应用

小华半导体有限公司是中国电子信息产业集团有限公司旗下集成电路业务平台华大半导体有限公司的核心子公司,目前团队规模约300人,其中75%以上为研发人员,国内细分行业规模最大,核心骨干拥有国际MCU大厂25年以上从业经验。 小华半导…

风险投资公司正在帮助小投资者购买Anthropic、OpenAI等热门公司的股票

近年来,风险投资公司对于人工智能(AI)领域的公司,如Anthropic、Groq、OpenAI等,表现出了极高的投资热情。这些公司因为它们在AI技术方面的创新而备受瞩目。但是,对于很多小投资者来说,由于资金有…

vmware将物理机|虚拟机转化为vmware虚机

有时,我们需要从不同的云平台迁移虚拟机、上下云、或者需要将不再受支持的老旧的物理服务器转化为虚拟机,这时,我们可以用一款虚拟机转化工具:vmware vcenter converter standalone,我用的是6.6的版本,当然…

心缘Hub小程序

心缘Hub小程序 文章目录 心缘Hub小程序[TOC](文章目录) 前言飞书文章:[添加链接描述](https://mqdyd6qj756.feishu.cn/wiki/X9qbwrq70i43W0kr5X8cqytSnKb) 一、简介 前言 飞书文章:添加链接描述 一、简介 心缘Hub 不要钱可以匹配 有缘人 、直接拿微信…

python无限弹窗的代码

一个简单的Python代码示例,用于在特定的时间间隔内显示一个简单的弹窗。这个代码使用了Python的tkinter库来创建一个简单的GUI窗口。 python import tkinter as tk import time def popup(): popup_window.deiconify() # 显示窗口 popup_window.wait_window() # 等…

QT_UI设计

mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow>QT_BEGIN_NAMESPACE //命名空间 namespace Ui { class MainWindow; } //ui_MainWindow文件里定义的类&#xff0c;外部声明 QT_END_NAMESPACEclass MainWindow : public QMainWindow {Q_O…

keil5常见使用技巧记录(更新)

快速到函数定义 F12或自己定义快捷键CTRLK&#xff08;个人设定&#xff09; 修改快捷键 下图实例是快速跳转到函数或变量定义位置&#xff0c;当然可以定义其他功能快捷键&#xff0c;如快速注释多行&#xff0c;快速消除注释等 标记全部查找变量的蓝色框取消 CTRLshiftF2…

gradle构建项目简单入门

gradleProject 搭建gradle项目步骤 官网文档地址&#xff1a;https://docs.gradle.org/current/userguide/userguide.html Getting Started 1.Gradle核心内容 1.Gradle介绍 Project&#xff1a;类似模块划分Build Scripts&#xff1a;构建ProjectDependency Management&…

2020长安杯

链接成功 检材一 1检材 1 的操作系统版本是 ()A. CentOS release 6.5 (Final)B. Ubuntu 16.04.3 LTSC. Debian GNU/ Linux 7.8 (wheezy)D. CentOS Linux release 7.6.1810 (Core)D 2检材 1 中&#xff0c;操作系统的内核版本是 ()(答案格式&#xff1a; “1.2.34” 数字和半角…

使用正则表达式分割字符串

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 split()方法用于实现根据正则表达式分割字符串&#xff0c;并以列表的形式返回。其作用同字符串对象的split()方法类似&#xff0c;所不同的就是分割…

多校园在校跑腿小程序 代拿快递+寄取快递+外卖配送等 前后端分离带完整的安装代码包以及搭建教程

系统概述 该系统采用前后端分离的开发模式&#xff0c;后端采用稳定的服务器端架构&#xff0c;确保系统稳定、安全、高效地运行。前端则采用轻量级框架&#xff0c;兼容多平台、多设备&#xff0c;确保用户在不同场景下都能获得流畅的使用体验。同时&#xff0c;还提供了完整…

地理坐标系、投影坐标系、ECEF坐标系(地心地固坐标系)、ENU坐标系(站心坐标系)的区别

地理坐标系、投影坐标系、ECEF坐标系&#xff08;地心地固坐标系&#xff09;、ENU坐标系&#xff08;站心坐标系&#xff09;的区别 1、 地理坐标系1&#xff09;什么是地理坐标系2&#xff09;为什么引入地理坐标系3&#xff09;WGS84和CGCS2000的差别4&#xff09;缺陷5&…

扑克牌游戏

完整代码: #include <iostream>#include <string> #include <conio.h> #include <stdlib.h> #include <stdio.h> #include <time.h> #include <algorithm> using namespace std;class Playing_Card //扑克类 {//private: publi…

ERP系统源码:企业资源规划的技术实现与优化

ERP&#xff08;Enterprise Resource Planning&#xff0c;企业资源规划&#xff09;系统是一种集成管理软件&#xff0c;它将企业的所有业务流程&#xff0c;包括采购、生产、库存、销售、财务等集成在一起&#xff0c;实现信息共享和资源优化配置。本文将详细介绍ERP系统的技…