Docker命令行参考(40) – docker service update更新服务

  1. Usage:  docker service update [OPTIONS] SERVICE
  2.  
  3. Update a service
  4.  
  5. Options:
  6.       --args string                    Service command args
  7.       --constraint-add value           Add or update placement constraints (default [])
  8.       --constraint-rm value            Remove a constraint (default [])
  9.       --container-label-add value      Add or update container labels (default [])
  10.       --container-label-rm value       Remove a container label by its key (default [])
  11.       --endpoint-mode string           Endpoint mode (vip or dnsrr)
  12.       --env-add value                  Add or update environment variables (default [])
  13.       --env-rm value                   Remove an environment variable (default [])
  14.       --help                           Print usage
  15.       --image string                   Service image tag
  16.       --label-add value                Add or update service labels (default [])
  17.       --label-rm value                 Remove a label by its key (default [])
  18.       --limit-cpu value                Limit CPUs (default 0.000)
  19.       --limit-memory value             Limit Memory (default 0 B)
  20.       --log-driver string              Logging driver for service
  21.       --log-opt value                  Logging driver options (default [])
  22.       --mount-add value                Add or update a mount on a service
  23.       --mount-rm value                 Remove a mount by its target path (default [])
  24.       --name string                    Service name
  25.       --publish-add value              Add or update a published port (default [])
  26.       --publish-rm value               Remove a published port by its target port (default [])
  27.       --replicas value                 Number of tasks (default none)
  28.       --reserve-cpu value              Reserve CPUs (default 0.000)
  29.       --reserve-memory value           Reserve Memory (default 0 B)
  30.       --restart-condition string       Restart when condition is met (none, on-failure, or any)
  31.       --restart-delay value            Delay between restart attempts (default none)
  32.       --restart-max-attempts value     Maximum number of restarts before giving up (default none)
  33.       --restart-window value           Window used to evaluate the restart policy (default none)
  34.       --stop-grace-period value        Time to wait before force killing a container (default none)
  35.       --update-delay duration          Delay between updates
  36.       --update-failure-action string   Action on update failure (pause|continue) (default "pause")
  37.       --update-parallelism uint        Maximum number of tasks updated simultaneously (0 to update all at once) (default 1)
  38.   -u, --user string                    Username or UID
  39.       --with-registry-auth             Send registry authentication details to Swarm agents
  40.   -w, --workdir string                 Working directory inside the container

通过指定的参数描述更新服务。这个命令必须在manager节点执行。这些参数与docker service create命令的参数一样。

示例

更新服务

  1. $ docker service update --limit-cpu 2 redis

添加和删除挂载

使用–mount-add 或 –mount-rm选项添加或删除一个服务的bind-mounts或volumes。

下面的示例创建一个服务并挂载test-data数据卷到/somewhere。下一步是更新服务添加挂载一个other-volume数据卷到/shomewhere-else,最后一步是取消/somewhere挂载点,将会删除test-data数据卷。每个命令返回服务名称。

  • –mount-add接受与service create的–mount选项一样的参数。
  • –mount-rm参数指定的是挂载点的目标路径。
    1. $ docker service create \
    2.     --name=myservice \
    3.     --mount \
    4.       type=volume,source=test-data,target=/somewhere \
    5.     nginx:alpine \
    6.     myservice
    7.  
    8. myservice
    9.  
    10. $ docker service update \
    11.     --mount-add \
    12.       type=volume,source=other-volume,target=/somewhere-else \
    13.     myservice
    14.  
    15. myservice
    16.  
    17. $ docker service update --mount-rm /somewhere myservice
    18.  
    19. myservice
    标签:Docker 发布于:2019-11-19 05:28:39