您好,登錄后才能下訂單哦!
怎么在docker中運行指定的內存?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
-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:
重啟系統。
看完上述內容,你們掌握怎么在docker中運行指定的內存的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。