docker container 動態修改記憶體限制

2021-09-29 10:12:49 字數 1806 閱讀 6237

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

當前要做的是把乙個執行著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
問題解決。

Docker container常用的命令

今天操作docker命令,顯然不那麼令人滿意,總結一下常用命令 安裝docker 顯像管理 docker images 列出本地所有映象 docker search 查詢image docker pull docker push 上傳image docker rmi 刪除image 容器管理 doc...

Docker Container同時啟動多服務

昨天踩了個天坑,我有乙個基本的映象centos6.5 ssh,是通過dockerfile build的,利用cmd命令啟動ssh。通過centos6.5 ssh映象,我想build乙個rabbitmq映象,dockerfile中cmd啟動rabbitmq服務。雖然我知道dockerfile中的cmd...

docker container 動態修改記憶體限制

原文 docker動態修改配置用docker update,用法 docker update h flag shorthand h has been deprecated,please use help usage docker update options container container....