专栏首页TensorbytesDocker container 动态修改内存限制

Docker container 动态修改内存限制

docker动态修改配置用docker update,用法:

docker update -h
Flag shorthand -h has been deprecated, please use --help

Usage:	docker update [OPTIONS] CONTAINER [CONTAINER...]

Update configuration of one or more containers

Options:
      --blkio-weight uint16         Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
      --cpu-period int              Limit CPU CFS (Completely Fair Scheduler) period
      --cpu-quota int               Limit CPU CFS (Completely Fair Scheduler) quota
      --cpu-rt-period int           Limit the CPU real-time period in microseconds
      --cpu-rt-runtime int          Limit the CPU real-time runtime in microseconds
  -c, --cpu-shares int              CPU shares (relative weight)
      --cpuset-cpus string          CPUs in which to allow execution (0-3, 0,1)
      --cpuset-mems string          MEMs in which to allow execution (0-3, 0,1)
      --help                        Print usage
      --kernel-memory string        Kernel memory limit
  -m, --memory string               Memory limit
      --memory-reservation string   Memory soft limit
      --memory-swap string          Swap limit equal to memory plus swap: '-1' to enable unlimited swap
      --restart string              Restart policy to apply when a container exits

当前要做的是把一个运行着gitlab 的容器内存限制在2048M以内,尝试用: docker update -m 2048m gitlab

报错:

Memory limit should be smaller than already set memoryswap limit, update the memoryswap at the same time

发现问题,docker 默认没有启用memory-swap交换内存,直接设置了内存问题会出问题,也就是说宿主 swap 支持使用多少则容器即可使用多少,如果 –memory-swap 设置小于 –memory则设置不生效。

将memory-swap 设置值为 -1,表示容器程序使用内存受限,而 swap 空间使用不受限制。

docker update --memory 2048m --memory-swap -1 gitlab

问题解决。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 代码版本管理规范

    git 流程模式有两种:一种是Git flow工作流,一种是Github flow工作流。

    机械视角
  • Hexo使用文档

    安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。

    机械视角
  • Pandas 高性能优化小技巧

    Pandas 对于Pythoner的搞数据分析的来说是常用的数据操作库,对于很多刚接触Pandas的人来说会发现它是一个很方便而且好用的库,它提供了各种数据变化...

    机械视角
  • Docker操作实践(2):Docker的安装及架构介绍

    上篇我们分享了一下容器的演进,然后用进程隔离、文件隔离、namespace、cgroups、libcontainer的几个角度展开容器的本质,本篇文章会对Doc...

    嘉为科技
  • Docker 容器操作

    容器是 Docker 又一核心概念。简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境。对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行...

    搜云库
  • Docker 容器操作

    容器是 Docker 又一核心概念。简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境。对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行...

    搜云库
  • Jmeter系列(59)- 详解 while 控制器

    和 java 里面的 while 循环一样,将一直运行其所有子项,直到条件为 false 为止

    小菠萝测试笔记
  • 终于有人把 Docker 讲清楚了,别再说不会 Docker 了!

    富 Web 时代,应用变得越来越强大,与此同时也越来越复杂。集群部署、隔离环境、灰度发布以及动态扩容缺一不可,而容器化则成为中间的必要桥梁。

    芋道源码
  • 并发篇-python并发通信

    多进程并发即运行多个独立的程序,优势在于并发处理的任务都由操作系统管理,不足之处在于程序与各进程之间的通信和数据共享不方便;

    小团子
  • Android开发仿bilibili刷新按钮的实现代码

    最近跟小伙伴一起讨论了一下,决定一起仿一个BiliBili的app(包括android端和iOS端),我们并没有打算把这个项目完全做完,毕竟我们的重点是掌握一些...

    砸漏

扫码关注云+社区

领取腾讯云代金券