容器重啟策略(啟動時啟動容器)

docker run --restart=always -d <container>

預設情況下,Docker 守護程式重新啟動時 Docker 不會重新啟動容器,例如在主機系統重新啟動後。Docker 通過提供 --restart 命令列選項為你的容器提供重新啟動策略。在重新啟動 Docker 守護程式後,提供 --restart=always 將始終導致重新啟動容器。**但是,**當手動停止該容器時(例如,使用 docker stop <container>),重啟策略將不會應用於容器。

根據要求(--restart=[policy]),可以為 --restart 選項指定多個選項。這些選項也會影響容器在啟動時的啟動方式。

政策 結果
no 預設值。當容器停止時,不會自動重啟容器。
on-failure[:max-retries] 僅當容器以失敗退出時才重新啟動(non-zero exit status)。為了避免無限期地重新啟動它(如果出現問題),可以限制 Docker 守護程式嘗試重新啟動重試的次數。
always 無論退出狀態如何,始終重新啟動容器。當你指定 always 時,Docker 守護程式將嘗試無限期地重新啟動容器。無論容器的當前狀態如何,容器也將始終在守護程式啟動時啟動。
unless-stopped 無論其退出狀態如何,始終重新啟動容器,但如果容器之前已經處於停止狀態,則不要在守護程式啟動時啟動它。