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

[实战]Docker应用自动重启

场景

Java应用,在凌晨定时任开始时运行一段时间后,会自动重启,导致定时任务失败。该应用使用Docker部署

分析

Docker应用运行一段时间自动重启可能的原因为容器分配的资源(如CPU、内存)不足,系统可能会杀死容器进程以释放资源。Docker随后可能会根据重启策略重启容器。

采用docker stats命令监控容器的资源使用情况, 同时手动触发定时任务。观察内存使用情况

发现 MEM USAGE 会接近LIMIT,判断为超内存导致的Docker重启

解决方案

去掉或增加Docker容器内存LIMIT的限制。

1、若采用Docker Compose则修改配置文件

    deploy:
      resources:
        limits:
          memory: 12288M

2、若使用Docker则修改已运行容器的内存限制,使用 docker update 命令来动态调整内存限制。例如,如果您想要将一个已运行的容器的内存限制增加到1GB,可以使用以下命令:
docker update -m 1024m my-container

创建容器时设置内存限制
当您创建一个新的容器时,可以使用 docker run 命令,并配合 -m 或 --memory 参数来设置内存限制。例如,如果您想要创建一个使用512MB内存的Nginx容器,可以使用以下命令:
docker run -m 512m -d --name my-nginx nginx


http://www.kler.cn/a/450687.html

相关文章:

  • Linux下编译安装Kokkos
  • 《智启新材:人工智能重塑分子结构设计蓝图》
  • 12寸半导体厂等保安全的设计思路
  • docker 部署win系统
  • 知乎 PB 级别 TiDB 数据库集群管控实践
  • leetcode hot100除自身以外的数组的乘积
  • Opencv实现图片和视频的加噪、平滑处理
  • 全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(实战项目二)
  • RTOS下的任务管理
  • 分体空调智能控制系统
  • leetcode79:单词搜索
  • http的访问过程或者访问页面会发生什么
  • 【国产NI替代】基于FPGA的4通道电压 250M采样终端边缘计算采集板卡,主控支持龙芯/飞腾
  • C# OpenCV机器视觉:缺陷检测
  • Web前端基础知识(一)
  • myexcel的使用
  • workman服务端开发模式-应用开发-vue-element-admin挂载websocket
  • Log4j2漏洞复现
  • 使用git管理项目版本
  • 基于Liveweb地铁轨道交通视频监控综合管理系统方案
  • 【ROS2】坐标TF发布(静态)
  • 支付域——支付路由设计
  • Flutter组合动画学习
  • Linux系统编程深度解析:C语言实战指南
  • 了解RPC
  • 《Web 应用项目开发:从构思到上线的全过程》