当前位置: 首页 > news >正文

docker运行程序Killed异常排查

问题描述

我最近开发了一个C++ 多线程程序,测试没有问题,封装docker测试也没有问题,然后提交给客户了,然后在他那边测试有问题,不定时、不定位置异常中断,以前一直认为只要封装了docker就万事大吉,测试提交肯定没有问题,突然冒出这个问题,有点慌,不知道代码上再要怎么改。然后不断重跑测试,测试中发现一个异常情况,就是每次中断都有一个不起眼的Killed提示,如下图
在这里插入图片描述

问题分析

开始我以为是代码中进行了逻辑控制,搜索Killed没有找到,然后借助AI进行排查这个问题,AI回答如下:
在这里插入图片描述

解决方案(docker desktop 版本)

当然现在知道问题原因了,可以搜索各种帖子来解决这个问题。我这里是用Windows 版本的docker desktop ,直接加载镜像运行容器的,所以与Linux版本的操作有所不同,特此记录

1、开启docker监控

在控制台执行docker stats,进行运行容器资源进行监控

docker stats

监控界面不断刷新,可以看到内存、CPU占用等等信息
在这里插入图片描述
通过上图一看内存只有2G,所以肯定需要加大内存

2、增加内存

网上很多,通过在命令中增加 -m指定内存容量

docker run -itd -m 8g -v D:/:/D d7e770648fa4 /bin/bash

但是上面这个方法对于docker desktop失效,因为docker desktop最大权限来自于软件界面上的操作,所以正确打开姿势如下:
2.1 打开设置界面
在这里插入图片描述

2.2 、打开Resources设置

在这里插入图片描述
果然,就是这里设置了内存限制2G,还有交换内存1G

往后面调整好,点击Apply按钮即可(注意:这里要注意自己电脑实际内存多少,要少于自己电脑本身内存,否则后面电脑特别卡,应用成功后这部分内存直接划分到应用了,宿主电脑用不了)

docker desktop 测试监控技巧

1、选择自己运行的容器在这里插入图片描述

2、鼠标左键点进去,弹出如界面,选择stats按钮,在这里监控程序跑的一举一动在这里插入图片描述

就此!!!

http://www.xdnf.cn/news/769825.html

相关文章:

  • 在考古方向遥遥领先的高校课程建设-250602
  • SpringBoot手动实现流式输出方案整理以及SSE规范输出详解
  • 【速通RAG实战:进阶】23、RAG应用规范化全流程标准框架:开发、部署、监控企业级最佳实践
  • imx6ull(0):烧录、启动
  • 设计模式(行为型)-中介者模式
  • 【技术支持】安卓开发中queryUsageStats不准确的问题
  • 【linux 入门】第六章 磁盘分区+网络配置
  • NodeJS全栈WEB3面试题——P7工具链 测试
  • 自定义Shell命令行解释器
  • FreeBSD 14.3 候选版本附带 Docker 镜像和关键修复
  • SpringBoot项目搭建指南
  • 【笔记】如何卸载 MSYS2 中不同工具链的 numpy 包
  • 【Java基础】Java中的HashSet详解
  • 【接口测试】基础知识
  • 源码解析(三):Stable Diffusion
  • MyBatis04——SpringBoot整合MyBatis
  • 大模型前处理-CPU
  • 如何使用flask做任务调度
  • 【LeetCode 热题100】BFS/DFS 实战:岛屿数量 腐烂的橘子(力扣200 / 994 )(Go语言版)
  • 力扣题解654:最大二叉树
  • 算法-集合的使用
  • 代码随想录算法训练营第四天| 242.有效的字母异位词 、 349. 两个数组的交集 、 202. 快乐数 、1. 两数之和
  • 力扣热题100之对称二叉树
  • flutter开发安卓APP适配不同尺寸的手机屏幕
  • 题目 3225: 蓝桥杯2024年第十五届省赛真题-回文字符串
  • windows11安装编译QtMvvm
  • github 2FA双重认证丢失解决
  • 《操作系统真相还原》——中断
  • AIOps智能运维体系中Python故障预测与根因分析的应用实践
  • EXSI通过笔记本wifi上外网配置