docker update 命令及用法详解
作者:Young丶
docker update
更新一个或多个容器的配置。官方文档
用法
$ docker update [OPTIONS] CONTAINER [CONTAINER...]
请参阅选项部分 OPTIONS
,了解此命令可用的概述。
描述
该 docker update
命令动态更新容器配置。您可以使用此命令来防止容器消耗 Docker 主机的过多资源。使用单个命令,您可以对单个容器或多个容器进行限制。要指定多个容器,请提供以空格分隔的容器名称或 ID 列表。
除了该 --kernel-memory
选项之外,您可以在正在运行或已停止的容器上指定这些选项。在早于 4.6 的内核版本上,您只能 --kernel-memory
在已停止的容器或已初始化内核内存的正在运行的容器上进行更新。
警告
Windows 容器不支持
docker update
和命令。docker container update
有关此命令的使用示例,请参阅下面的示例部分。
选项
名称、简写 | 默认 | 描述 |
---|---|---|
--blkio-weight | 块 IO(相对权重),介于 10 到 1000 之间,或 0 禁用(默认 0) | |
--cpu-period | 限制CPU CFS(完全公平调度程序)周期 | |
--cpu-quota | 限制CPU CFS(完全公平调度程序)配额 | |
--cpu-rt-period | 限制CPU实时周期(以微秒为单位) | |
--cpu-rt-runtime | 将CPU实时运行时间限制在微秒级 | |
--cpu-shares,-c | CPU 份额(相对权重) | |
--cpus | CPU数量 | |
--cpuset-cpus | 允许执行的 CPU (0-3, 0,1) | |
--cpuset-mems | 允许执行的 MEM (0-3, 0,1) | |
--memory,-m | 内存限制 | |
--memory-reservation | 内存软限制 | |
--memory-swap | 交换限制等于内存加交换:-1 启用无限制交换 | |
--pids-limit | API 1.40+ 调整容器 pid 限制(设置 -1 表示无限制) | |
--restart | 容器退出时应用的重新启动策略 |
例子
以下部分说明了使用此命令的方法。
更新容器的 cpu-shares (–cpu-shares)
要将容器的 cpu 份额限制为 512,请首先确定容器名称或 ID。您可以使用 docker ps
来查找这些值。您还可以使用从命令返回的 ID docker run
。然后,执行以下操作:
$ docker update --cpu-shares 512 abebf7571666
使用 cpu-shares 和内存更新容器 (-m, --memory)
要更新多个容器的多个资源配置:
$ docker update --cpu-shares 512 -m 300M abebf7571666 hopeful_morse
更新容器的内核内存约束(–kernel-memory)
您可以使用该选项更新容器的内核内存限制 --kernel-memory
。在早于 4.6 的内核版本上,仅当容器以 --kernel-memory
. 如果容器已启动*,* --kernel-memory
则需要在更新内核内存之前停止容器。
笔记
该
--kernel-memory
选项自 Docker 20.10 起已被弃用。
例如,如果您使用以下命令启动了一个容器:
$ docker run -dit --name test --kernel-memory 50M ubuntu bash
您可以在容器运行时更新内核内存:
$ docker update --kernel-memory 80M test
如果您启动了一个没有初始化内核内存的容器:
$ docker run -dit --name test2 --memory 300M ubuntu bash
更新正在运行的容器的内核内存 test2
将失败。您需要在更新设置之前停止容器 --kernel-memory
。下次启动时,容器将使用新值。
比(含)4.6更新的内核版本没有此限制,您可以使用 --kernel-memory
与其他选项相同的方式。
更新容器的重启策略(–restart)
您可以更改正在运行的容器的容器重启策略。 docker update
新的重启策略在容器上运行后立即生效。
要更新一个或多个容器的重启策略:
$ docker update --restart=on-failure:3 abebf7571666 hopeful_morse
请注意,如果容器使用“–rm”标志启动,则无法更新其重启策略。对于容器来说 和 是互斥的 AutoRemove
。 RestartPolicy
到此这篇关于docker update 命令的文章就介绍到这了,更多相关docker update 命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!