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
- update restartREST
- Flink Restart Strategies重啟策略機制深入剖析-Flink牛刀小試REST
- 4.2 配置 RestartREST
- restart oracle streamRESTOracle
- 4.1.1 Oracle Restart概述OracleREST
- 如何修改docker容器的重啟策略(重啟模式)?Docker模式
- 4.1 關於 Oracle RestartOracleREST
- SVG restart動畫屬性SVGREST動畫
- SVG restart 動畫屬性SVGREST動畫
- check memcached process and restart if downREST
- How to Restart Qt ApplicationRESTQTAPP
- 關於 Windows 子系統 WSL ubuntu18.04 無法使用 sudo systemctl restart dockerWindowsUbuntuRESTDocker
- oracle 11g中的 oracle restart特性OracleREST
- 4.2.1 關於配置Oracle RestartOracleREST
- jupyter-kernelRestart:restart failedRESTAI
- Docker 映象製作教程:針對不同語言的精簡策略Docker
- 4.2.4 向Oracle Restart 配置新增元件OracleREST元件
- 4.5 通過SRVCTL 呼叫Oracle RestartOracleREST
- android restart reason機制AndroidREST
- docker學習筆記-為容器配置重啟策略Docker筆記
- docker筆記32-k8s基於canal的網路策略Docker筆記K8S
- 4.1.6 Oracle Restart 與 Oracle Data Guard 整合OracleREST
- (slave不停restart)mysqld got signal 11RESTMySqlGo
- Oracle Restart環境下的開機啟動指令碼OracleREST指令碼
- 4.1.4 關於啟動和停止Oracle RestartOracleREST
- 4.2.5 從 Oracle Restart 配置中刪除元件OracleREST元件
- 4.2.10.1 Oracle Restart 相關變數配置OracleREST變數
- How To Restart timer service on all servers in farmRESTServer
- 【RAC】11gR2 新特性: Rebootless RestartbootREST
- rac one node、Single Instance HA(SIHA)、Oracle Restart的概念OracleREST
- MySQL Slave異常關機的處理 (pt-slave-restart)MySqlREST
- Nuxt.js 應用中的 restart 事件鉤子詳解UXJSREST事件
- 4.1.3 使用 Oracle Restart 元件啟停資料庫OracleREST元件資料庫
- hyperf 服務管理指令碼 start、restart、stop、status指令碼REST
- DQACP is missing Press Ctrl+Alt+Del to Restart(圖)REST
- Oracle 11gR2 New Features Oracle RestartOracleREST