iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >docker 运行指定内存的操作
  • 939
分享到

docker 运行指定内存的操作

2024-04-02 19:04:59 939人浏览 安东尼
摘要

如下: -m,--memory 内存限制,格式是数字加单位,单位可以为 b,k,m,g。最小为 4M --memory-swap 内存+交换分区大小

如下:


-m,--memory         内存限制,格式是数字加单位,单位可以为 b,k,m,g。最小为 4M
--memory-swap        内存+交换分区大小总限制。格式同上。必须必-m设置的大
--memory-reservation     内存的软性限制。格式同上
--oom-kill-disable      是否阻止 OOM killer 杀死容器,默认没设置
--oom-score-adj       容器被 OOM killer 杀死的优先级,范围是[-1000, 1000],默认为 0
--memory-swappiness     用于设置容器的虚拟内存控制行为。值为 0~100 之间的整数
--kernel-memory       核心内存限制。格式同上,最小为 4M

查看事例:


[root@sannian ~]# Docker run -d -m 1G --memory-swap 3G -p 9999:80 --restart=always --name gitlab twang2218/gitlab-ce-zh
a3254078a79a084f3f3bed5f4ade3e26c7d86951cd822d95b113227d75b00097

[root@sannian ~]# docker ps
CONTaiNER ID    IMAGE          COMMAND       CREATED       STATUS          PORTS                  NAMES
a3254078a79a    twang2218/gitlab-ce-zh  "/assets/wrapper"  21 minutes aGo   Up 2 minutes (healthy)  22/tcp, 443/tcp, 0.0.0.0:9999->80/tcp  gitlab

[root@sannian ~]# docker images
REPOSITORY                        TAG         IMAGE ID      CREATED       SIZE
twang2218/gitlab-ce-zh                  latest       18da462b5ff5    3 months ago    1.61GB
reGIStry-vpc.cn-hangzhou.aliyuncs.com/wenty/jumpserver  latest       055f42f305f5    7 months ago    1.41GB
registry.cn-hangzhou.aliyuncs.com/wenty/jumpserver    latest       055f42f305f5    7 months ago    1.41GB
registry.jumpserver.org/public/jumpserver        1.0.0        055f42f305f5    7 months ago    1.41GB
registry.jumpserver.org/public/jumpserver        latest       055f42f305f5    7 months ago    1.41GB

补充:docker run -m指定内存大小不生效

执行docker run的时候,想要指定一下内存大小,用了-m参数

报错如下

#docker run -id -m 3g -p 7001:7001 197.3.16.51/sysmgr/myWEBapptest_app_weblogic:20180820047 WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. 52380a4896f3f916cd0f95f97e233b30d9406840e10c0c53484b3be9000d0321

然后发现虽然我设置堆大小为5G,容器还是创建出来了,3g的限制并没有生效。

查阅资料发现这个报错是因为宿主机内核的相关功能没有打开。

解决方案

按照下面的设置就行

step 1:

编辑/etc/default/grub文件,将GRUB_CMDLINE_linux一行改为


GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"

step 2:

更新 GRUB,即执行$ sudo update-grub

step 3:

重启系统。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。如有错误或未考虑完全的地方,望不吝赐教。

--结束END--

本文标题: docker 运行指定内存的操作

本文链接: https://www.lsjlt.com/news/122554.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作