docker?update?命令及用法詳解
docker update
更新一個或多個容器的配置。官方文檔
用法
$ docker update [OPTIONS] CONTAINER [CONTAINER...]
請參閱選項部分 OPTIONS
,了解此命令可用的概述。
描述
該 docker update
命令動態(tài)更新容器配置。您可以使用此命令來防止容器消耗 Docker 主機的過多資源。使用單個命令,您可以對單個容器或多個容器進行限制。要指定多個容器,請?zhí)峁┮钥崭穹指舻娜萜髅Q或 ID 列表。
除了該 --kernel-memory
選項之外,您可以在正在運行或已停止的容器上指定這些選項。在早于 4.6 的內(nèi)核版本上,您只能 --kernel-memory
在已停止的容器或已初始化內(nèi)核內(nèi)存的正在運行的容器上進行更新。
警告
Windows 容器不支持
docker update
和命令。docker container update
有關(guān)此命令的使用示例,請參閱下面的示例部分。
選項
名稱、簡寫 | 默認 | 描述 |
---|---|---|
--blkio-weight | 塊 IO(相對權(quán)重),介于 10 到 1000 之間,或 0 禁用(默認 0) | |
--cpu-period | 限制CPU CFS(完全公平調(diào)度程序)周期 | |
--cpu-quota | 限制CPU CFS(完全公平調(diào)度程序)配額 | |
--cpu-rt-period | 限制CPU實時周期(以微秒為單位) | |
--cpu-rt-runtime | 將CPU實時運行時間限制在微秒級 | |
--cpu-shares,-c | CPU 份額(相對權(quán)重) | |
--cpus | CPU數(shù)量 | |
--cpuset-cpus | 允許執(zhí)行的 CPU (0-3, 0,1) | |
--cpuset-mems | 允許執(zhí)行的 MEM (0-3, 0,1) | |
--memory,-m | 內(nèi)存限制 | |
--memory-reservation | 內(nèi)存軟限制 | |
--memory-swap | 交換限制等于內(nèi)存加交換:-1 啟用無限制交換 | |
--pids-limit | API 1.40+ 調(diào)整容器 pid 限制(設(shè)置 -1 表示無限制) | |
--restart | 容器退出時應(yīng)用的重新啟動策略 |
例子
以下部分說明了使用此命令的方法。
更新容器的 cpu-shares (–cpu-shares)
要將容器的 cpu 份額限制為 512,請首先確定容器名稱或 ID。您可以使用 docker ps
來查找這些值。您還可以使用從命令返回的 ID docker run
。然后,執(zhí)行以下操作:
$ docker update --cpu-shares 512 abebf7571666
使用 cpu-shares 和內(nèi)存更新容器 (-m, --memory)
要更新多個容器的多個資源配置:
$ docker update --cpu-shares 512 -m 300M abebf7571666 hopeful_morse
更新容器的內(nèi)核內(nèi)存約束(–kernel-memory)
您可以使用該選項更新容器的內(nèi)核內(nèi)存限制 --kernel-memory
。在早于 4.6 的內(nèi)核版本上,僅當(dāng)容器以 --kernel-memory
. 如果容器已啟動*,* --kernel-memory
則需要在更新內(nèi)核內(nèi)存之前停止容器。
筆記
該
--kernel-memory
選項自 Docker 20.10 起已被棄用。
例如,如果您使用以下命令啟動了一個容器:
$ docker run -dit --name test --kernel-memory 50M ubuntu bash
您可以在容器運行時更新內(nèi)核內(nèi)存:
$ docker update --kernel-memory 80M test
如果您啟動了一個沒有初始化內(nèi)核內(nèi)存的容器:
$ docker run -dit --name test2 --memory 300M ubuntu bash
更新正在運行的容器的內(nèi)核內(nèi)存 test2
將失敗。您需要在更新設(shè)置之前停止容器 --kernel-memory
。下次啟動時,容器將使用新值。
比(含)4.6更新的內(nèi)核版本沒有此限制,您可以使用 --kernel-memory
與其他選項相同的方式。
更新容器的重啟策略(–restart)
您可以更改正在運行的容器的容器重啟策略。 docker update
新的重啟策略在容器上運行后立即生效。
要更新一個或多個容器的重啟策略:
$ docker update --restart=on-failure:3 abebf7571666 hopeful_morse
請注意,如果容器使用“–rm”標(biāo)志啟動,則無法更新其重啟策略。對于容器來說 和 是互斥的 AutoRemove
。 RestartPolicy
到此這篇關(guān)于docker update 命令的文章就介紹到這了,更多相關(guān)docker update 命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解如何使用Docker部署Django+MySQL8開發(fā)環(huán)境
這篇文章主要介紹了詳解如何使用Docker部署Django+MySQL8開發(fā)環(huán)境,文中通過示例代碼以及圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07Skywalking?Docker單機環(huán)境搭建過程
這篇文章主要介紹了Skywalking?Docker單機環(huán)境搭建,本次搭建是基于MySQL進行持久化,因此需要提前準(zhǔn)備好一個MySQL容器,需要的朋友可以參考下2024-02-02