docker的restart策略
docker支援如下restart策略:
- no – 容器退出時不要自動重啟。這個是預設值。* on-failure[:max-retries] – 只在容器以非0狀態碼退出時重啟。可選的,可以退出docker daemon嘗試重啟容器的次數。* always – 不管退出狀態碼是什麼始終重啟容器。當指定always時,docker daemon將無限次數地重啟容器。容器也會在daemon啟動時嘗試重啟,不管容器當時的狀態如何。* unless-stopped – 不管退出狀態碼是什麼始終重啟容器,不過當daemon啟動時,如果容器之前已經為停止狀態,不要嘗試啟動它。
在每次重啟容器之前,不斷地增加重啟延遲[上一次重啟的雙倍延遲,從100毫秒開始]來防止影響伺服器。這意味著daemon將等待100ms,然後200 ms, 400, 800, 1600等等,直到超過on-failure限制,或執行docker stop或docker rm -f。
如果容器重啟成功[容器啟動後並執行至少10秒],然後delay重置為預設的100ms。
你可以使用on-failure策略指定docker嘗試重啟容器的最大次數。預設下docker將無限次數重啟容器。可以通過docker inspect來檢視已經嘗試重啟容器了多少次。例如,獲取容器“my-container”的重啟次數:
- $ docker inspect -f "{{ .RestartCount }}" my-container
-
2
或者獲取上一次容器重啟時間:
- $ docker inspect -f "{{ .State.StartedAt }}" my-container
-
2015-03-04T23:47:07.691840179Z
示例
- $ docker run --restart=always redis
這執行了一個restart策略為always的redis容器,以使得容器退出時,docker將重啟它。
- $ docker run --restart=on-failure:10 redis
這個執行了一個restart策略為on-failure,最大重啟次數為10的redis容器。如果redis以非0狀態退出連續退出超過10次,那麼docker將中斷嘗試重啟這個容器。只有on-failure策略支援設定最大重啟次數限制。
相關文章
- pm2 重啟策略(restart strategies)REST
- docker-compose up start restart區別DockerREST
- Flink Restart Strategies重啟策略機制深入剖析-Flink牛刀小試REST
- 4.2 配置 RestartREST
- restart oracle streamRESTOracle
- 4.1.1 Oracle Restart概述OracleREST
- How to Restart Qt ApplicationRESTQTAPP
- 關於 Windows 子系統 WSL ubuntu18.04 無法使用 sudo systemctl restart dockerWindowsUbuntuRESTDocker
- jupyter-kernelRestart:restart failedRESTAI
- 4.1 關於 Oracle RestartOracleREST
- check memcached process and restart if downREST
- 如何修改docker容器的重啟策略(重啟模式)?Docker模式
- SVG restart 動畫屬性SVGREST動畫
- SVG restart動畫屬性SVGREST動畫
- 4.2.1 關於配置Oracle RestartOracleREST
- 4.5 通過SRVCTL 呼叫Oracle RestartOracleREST
- 4.2.4 向Oracle Restart 配置新增元件OracleREST元件
- Docker 映象製作教程:針對不同語言的精簡策略Docker
- 4.1.6 Oracle Restart 與 Oracle Data Guard 整合OracleREST
- 4.2.10.1 Oracle Restart 相關變數配置OracleREST變數
- Oracle Restart環境下的開機啟動指令碼OracleREST指令碼
- docker學習筆記-為容器配置重啟策略Docker筆記
- docker筆記32-k8s基於canal的網路策略Docker筆記K8S
- 4.2.5 從 Oracle Restart 配置中刪除元件OracleREST元件
- 4.1.4 關於啟動和停止Oracle RestartOracleREST
- Nuxt.js 應用中的 restart 事件鉤子詳解UXJSREST事件
- 為正在執行的 Docker 容器重啟策略,以提高服務的可用性Docker
- hyperf 服務管理指令碼 start、restart、stop、status指令碼REST
- 4.1.3 使用 Oracle Restart 元件啟停資料庫OracleREST元件資料庫
- [20190530]ORACLE 18c - ALTER SEQUENCE RESTART.txtOracleREST
- 4.3 Oracle Restart元件實現oracle啟動和停止OracleREST元件
- 策略模式、策略模式與Spring的碰撞模式Spring
- Unable to save settings: Failed to save settings. Please restart PyCharm解決AIRESTPyCharm
- 4.2.12 在 Oracle Restart Environment 環境中啟用 FAN 事件OracleREST事件
- docker筆記33-排程器、預選策略及優選函式Docker筆記函式
- Failed to restart Polybase Data Movement service after running sp_polybase_join_groupAIREST
- 4.4 停止和重新啟動Oracle Restart進行維護操作OracleREST
- Docker 與 K8S學習筆記(二十五)—— Pod的各種排程策略(上)DockerK8S筆記