Docker 容器更新
描述 | 更新一个或多个容器的配置 |
---|---|
用法 | docker container update [OPTIONS] CONTAINER [CONTAINER...] |
别名 | docker update |
描述
这docker update
命令动态更新容器配置。
您可以使用此命令来防止容器消耗过多
资源。只需一个命令,您就可以将
对单个容器或多个容器的限制。要指定多个容器,
提供以空格分隔的容器名称或 ID 列表。
除了--kernel-memory
选项中,您可以指定这些
选项。在内核版本低于
4.6,您只能更新--kernel-memory
在已停止的容器上或
初始化了内核内存的正在运行的容器。
警告
这
docker update
和docker container update
不支持命令 适用于 Windows 容器。
选项
选择 | 违约 | 描述 |
---|---|---|
--blkio-weight | 块 IO (相对权重),介于 10 和 1000 之间,或 0 表示禁用(默认为 0) | |
--cpu-period | 限制 CPU CFS (Completely Fair Scheduler) 周期 | |
--cpu-quota | 限制 CPU CFS (Completely Fair Scheduler) 配额 | |
--cpu-rt-period | API 1.25+限制 CPU 实时周期(以微秒为单位) | |
--cpu-rt-runtime | API 1.25+限制 CPU 实时运行时间(以微秒为单位) | |
-c, --cpu-shares | CPU 份额(相对权重) | |
--cpus | API 1.29+CPU 数量 | |
--cpuset-cpus | 允许执行的 CPU (0-3, 0,1) | |
--cpuset-mems | 允许在其中执行的 MEM (0-3, 0,1) | |
-m, --memory | 内存限制 | |
--memory-reservation | 内存软限制 | |
--memory-swap | 交换限制等于内存加上交换:-1 启用无限交换 | |
--pids-limit | API 1.40+调整容器 pids 限制(设置为 -1 表示无限制) | |
--restart | 容器退出时要应用的重启策略 |
例子
以下部分说明了使用此命令的方法。
更新容器的 cpu-shares (--cpu-shares)
要将容器的 cpu-shares 限制为 512,请首先确定容器
name 或 ID。您可以使用docker ps
以查找这些值。您还可以
使用从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 的内核版本上,可以在
Running container (如果容器是使用--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
设置。下次您
启动它,容器将使用新值。
高于 (include) 4.6 的内核版本没有此限制,您
可以使用--kernel-memory
与其他选项相同。
更新容器的重启策略 (--restart)
您可以在正在运行的容器上更改容器的重启策略。新的
重新启动策略在您运行docker update
在
容器。
要更新一个或多个容器的重启策略,请执行以下作:
$ docker update --restart=on-failure:3 abebf7571666 hopeful_morse
请注意,如果容器以--rm
标志,则无法更新重新启动
政策。这AutoRemove
和RestartPolicy
对于
容器。