docker 容器 自启动策略 restart policy

docker run 中设置

在docker run通过 --restart 设置守护机制:

no: 不自动重新启动容器(默认)

no-failure: 容器发生error而退出(容器退出状态不为0)重启容器

unless-stopped:  在容器已经stop掉或Docker stoped/restarted的时候才重启容器

always: 如果容器停止,总是重新启动容器。如果手动kill容器,则无法自动重启。

举例: 安装Portainer(Docker的图形化管理工具),并设置自启动

docker run --restart=always -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

docker update 追加命令

 运行中的容器,当时没有指定restart 可以通过update命令追加。

举例: web为正在运行的容器

docker update --restart=always web

在compose文件中设置

version: "3"
services:
  redis:
    image: redis:alpine
    deploy:
      restart_policy:
        condition: on-failure
        delay: 5s
        max_attempts: 3
        window: 120s

配置容器的启动,代替以前的关键字 restart 。 

  • condition:值可以为 none 、on-failure 以及 any(默认)
  • delay: 尝试重启的等待时间,默认为 0
  • max_attempts:在放弃之前尝试重新启动容器次数(默认:从不放弃)。如果重新启动在配置中没有成功 window,则此尝试不计入配置max_attempts 值。例如,如果 max_attempts 值为 2,并且第一次尝试重新启动失败,则可能会尝试重新启动两次以上。
  • windows:在决定重新启动是否成功之前的等时间,指定为持续时间(默认值:立即决定)。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值