docker創建容器添加啟動--restart選項

一、通過 Docker 命令直接修改已啟動的容器(推薦-已驗證)

操作步驟:

1.執行更新命令:

docker update --restart=always <容器名或ID>

此命令會將容器的重啟策略調整為 always(無論容器以何種狀態退出,均自動重啟)。

2.驗證是否生效:

docker inspect <容器名或ID> 

在前部分RestartPolicy位置查看到:
若輸出顯示 “Name”: “always”,則說明修改成功。
在這里插入圖片描述

適用場景:

容器處于運行或停止狀態均可操作。
無需停止 Docker 服務,操作簡單且風險較低。

二、通過修改配置文件(備選方案)

若命令修改無效(如舊版本 Docker 兼容性問題),可手動編輯容器配置文件:

1停止容器及 Docker 服務

docker stop <容器名或ID>  # 停止容器 
systemctl stop docker    # 停止 Docker 服務 

2.修改配置文件:

定位到容器配置目錄:/var/lib/docker/containers/<容器ID>/
編輯 hostconfig.json ,找到 RestartPolicy 字段,修改為:

"RestartPolicy": {"Name": "always", "MaximumRetryCount": 0}

部分版本需同步修改 config.v2.json (添加 “RestartPolicy”: {“Name”: “always”})。

3.重啟 Docker 服務及容器:

systemctl start docker   # 啟動 Docker 服務 
docker start <容器名或ID> # 啟動容器 

注意事項:

需確保 Docker 服務完全停止后再修改文件,否則可能導致配置被覆蓋。
適用于無法通過命令修改的特殊場景,如 Docker 版本兼容性問題。

三、其他相關建議

重啟策略類型(–restart參數):

no:不自動重啟(默認)。
always:始終重啟。
unless-stopped:Docker 服務重啟后自動啟動容器,除非容器被手動停止。

端口映射等參數修改:

若需同時調整端口映射或存儲路徑,需通過 docker commit 生成新鏡像并重新創建容器。

總結

推薦優先使用 docker update 命令,簡單高效且兼容性強。
修改配置文件適用于調試或特殊環境,但需謹慎操作以避免配置沖突。
可通過 docker inspect 驗證參數是否生效。

★★★★★★★★★★★★★★★★★★如何在啟動時就配置好?★★★★★★★★★★★★★★★★★★★

一、基本配置方法

在 docker run 命令中直接添加 --restart 參數即可:

docker run -d --restart=策略類型 [其他參數] 鏡像名 

支持的策略類型:

no
默認策略,容器退出后不會自動重啟。on-failure僅在容器非正常退出(退出狀態碼非0)時重啟。可指定最大重試次數,例如 --restart=on-failure:3(最多重啟3次)。always無論容器以何種狀態退出(包括手動停止),Docker服務重啟后都會自動啟動該容器。unless-stopped類似 always,但排除 Docker 守護進程啟動前已被手動停止的容器。

二、配置示例

1. 始終自動重啟

docker run -d --restart=always --name my_nginx nginx 

2. 僅在異常退出時重啟(最多5次)

docker run -d --restart=on-failure:5 --name my_app your_image 

3. 排除手動停止的場景

docker run -d --restart=unless-stopped --name my_db mysql 

三、驗證配置是否生效

通過以下命令檢查重啟策略:

docker inspect --format='{{.HostConfig.RestartPolicy.Name}}' 容器名 

輸出應為 always、on-failure 或 unless-stopped。

四、注意事項

策略優先級

    手動執行 docker stop 后,always 策略的容器仍會在 Docker 服務重啟后自動啟動,而 unless-stopped 不會。

資源限制

    頻繁重啟可能占用資源,建議為 on-failure 設置最大重試次數(如 :3)。

版本兼容性

    unless-stopped 需要 Docker 1.9 或更高版本。

與 --rm 參數沖突

    --restart 不能與 --rm(容器退出后自動刪除)同時使用。

五、生產環境推薦方案

長期運行的服務(如 Web 服務器):優先使用 always 或 unless-stopped。
一次性任務或批處理作業:使用 on-failure 并限制重試次數,避免無限重啟。

通過合理選擇策略,可確保容器在異常退出或宿主機重啟后自動恢復運行。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/76691.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/76691.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/76691.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

redission鎖釋放失敗處理

redission鎖釋放失敗處理 https://www.jianshu.com/p/055ae798547a 就是可以刪除 鎖的key 這樣鎖就釋放了&#xff0c;但是 還是要結合業務&#xff0c;這種是 非正規的處理方式&#xff0c;還是要在代碼層面進行處理。

【語音識別】vLLM 部署 Whisper 語音識別模型指南

目錄 1. 模型下載 2. 環境安裝 3. 部署腳本 4. 服務測試 語音識別技術在現代人工智能應用中扮演著重要角色&#xff0c;OpenAI開源的Whisper模型以其出色的識別準確率和多語言支持能力成為當前最先進的語音識別解決方案之一。本文將詳細介紹如何使用vLLM&#xff08;一個高…

Windows Server 2019 安裝 Docker 完整指南

博主本人使用的是離線安裝 1. 安裝前準備 系統要求 操作系統&#xff1a;Windows Server 2019&#xff08;或 2016/2022&#xff09;權限&#xff1a;管理員權限的 PowerShell網絡&#xff1a;可訪問互聯網&#xff08;或離線安裝包&#xff09; 啟用容器功能 Install-Win…

C# 混淆代碼工具--ConfuserEx功能與使用指南

目錄 1 前言1.1 可能帶來的問題 2 ConfuserEx2.1 簡介2.2 功能特點2.3 基本使用方法2.4 集成到MSBuild2.5 深入設置2.5.1 保護機制2.5.1.1 ConfuserEx Protection 2.5.2 精細的代碼保護主要特性1. decl-type(string)2.full-name(string)3. is-public()4. match(string)5. match…

c# 新建不重名的唯一文件夾

在源文件夾內創建唯一目標文件夾 string newFolder GetUniqueFolderName(sourceFolder); Directory.CreateDirectory(newFolder); /// <summary>/// 生成唯一文件夾名稱&#xff08;格式&#xff1a;新建文件夾、新建文件夾1、新建文件夾2...&#xff09;…

3D案例丨多個3D工業相機拼接檢測 開啟360°新視界

在高速生產線上&#xff0c;經常需要在極短的時間內對工件進行全方位的外觀檢測&#xff0c;如&#xff1a;線纜直徑和直線度檢測、鋰電池外觀缺陷檢測、鐵軌截面尺寸檢測等。 這需要傳感器完整還原被測物的截面面輪廓形狀&#xff0c;并獲取精準的截面輪廓數據。但單一相機的…

openapi + knife4j的使用

一、依賴作用與關系 1. springdoc-openapi-starter-webmvc-api ? 核心功能&#xff1a; 基于 OpenAPI 3 規范&#xff0c;自動生成 API 文檔元數據&#xff08;JSON 格式&#xff09;&#xff0c;并集成 Spring MVC。 提供Tag Operation、Schema 等注解&#xff0c;支持通過…

解決電腦問題——突然斷網!

電腦如果突然斷網是怎么回事 電腦突然斷網可能由多種原因造成&#xff0c;以下是常見的因素&#xff1a; 網絡連接與權限問題 路由器或調制解調器故障&#xff1a;路由器或調制解調器可能出現硬件故障、軟件故障或設置錯誤。可以嘗試重啟設備&#xff0c;如果問題依舊&#…

區塊鏈從專家到小白

文章目錄 含義應用場景典型特征 含義 以非對稱加密算法為基礎。 每個**區塊&#xff08;Block&#xff09;**包含&#xff1a; ?交易數據?&#xff08;如轉賬記錄、合約內容&#xff09;。 ?時間戳?&#xff08;記錄生成時間&#xff09;。 ?哈希值?&#xff08;當前區…

git 提交標簽

Git 提交標簽 提交消息格式&#xff1a; <type>: <description> &#xff08;示例&#xff1a;git commit -m "feat: add user login API"&#xff09; 標簽適用場景feat新增功能&#xff08;Feature&#xff09;。fix修復 Bug&#xff08;Bug fix&…

微信小程序:動態表格實現,表頭單元格數據完全從data中獲取,寬度自定義,自定義文本框,行勾選,樣式效果,橫向滾動表格(解決背景色不足的問題)等

一、樣式效果 二、代碼 1、wxml <view class"line flex flex-center"><view class"none" wx:if"{{info.length 0}}">暫無料號</view><view wx:else class"table-container"><!-- 動態生成表頭 -->&…

探索 MCP 和 A2A 協議: 本質上新協議都基于 HTTP的

以下是以 CSDN 博客的形式記錄你對 MCP 協議和 A2A 協議數據傳遞的理解&#xff0c;重點探討了它們為何基于 HTTP 協議、HTTP 的優勢&#xff0c;以及數據傳輸的本質。文章面向技術社區&#xff0c;結構清晰&#xff0c;適合分享。 探索 MCP 和 A2A 協議&#xff1a;為何新協議…

[redis進階一]redis的持久化(2)AOF篇章

目錄 一 為什么有了RDB持久化機制還要有AOF呢 板書介紹具體原因: ?編輯二 詳細講解AOF機制 (1)AOF的基本使用 1)板書如下 2)開啟AOF機制: 3) AOF工作流程 (2)AOF是否會影響到redis性能 ?編輯 (3)AOF緩沖區刷新策略 (4)AOF的重寫機制 板書如下: 為什么要有這個重寫機…

前端防御性編程

關于防御性編程 你是否遇到過&#xff0c;接口請求失敗或者返回數據錯誤&#xff0c;導致系統白屏或者前端自身寫的代碼存在一些缺陷&#xff0c;導致整個系統不夠健壯&#xff0c;從而導致系統白屏 常見的問題與防范 最常見的問題 訪問了null或者undefined的屬性 null.a …

[數據結構]排序 --2

目錄 8、快速排序 8.1、Hoare版 8.2、挖坑法 8.3、前后指針法 9、快速排序優化 9.1、三數取中法 9.2、采用插入排序 10、快速排序非遞歸 11、歸并排序 12、歸并排序非遞歸 13、排序類算法總結 14、計數排序 15、其他排序 15.1、基數排序 15.2、桶排序 8、快速排…

虎躍辦公AI:重構智能辦公的「模型交響樂團」

虎躍辦公AI&#xff1a;重構智能辦公的「模型交響樂團」 ——當全球40大模型在辦公場景中奏響協奏曲 在某科創園區的會議室里&#xff0c;市場總監李薇正用AI生成產品發布會方案&#xff0c;設計團隊同步調校著AI渲染的3D主視覺&#xff0c;法務AI自動掃描著合同風險條款——這…

JdbcTemplate基本使用

JdbcTemplate概述 它是spring框架中提供的一個對象&#xff0c;是對原始繁瑣的JdbcAPI對象的簡單封裝。spring框架為我們提供了很多的操作模板類。例如:操作關系型數據的JdbcTemplate和MbernateTemplate&#xff0c;操作nosql數據庫的RedisTemplate&#xff0c;操作消息隊列的…

vue+leaflet 區域劃分_反向遮罩層

leaflet 區域劃分_遮罩層 geojson在線生成器網址:(https://datav.aliyun.com/portal/school/atlas/area_selector) 點擊前往阿里云geojson生成器 效果圖: 實現下面效果,只需要把addSateLayer函數的調用取消掉就好了. //添加遮罩層代碼function addMask() {var latlngs;var fe…

ESP32開發之ubuntu環境搭建

1. 在Ubuntu官網下載Ubuntu server 20.04版本https://releases.ubuntu.com/20.04.6/ 2. 在vmware下安裝Ubuntu 3. 改Ubuntu靜態IP $ sudo vi /etc/netplan/00-installer-config.yaml# This is the network config written by ‘subiquity’ network: renderer: networkd eth…

HTTP 1.1 比 HTTP1.0 多了什么?(詳盡版)

相較于HTTP 1.0&#xff0c;1.1 版本增加了以上特性&#xff1a; 1. 新增了連接管理即 keepalive&#xff0c;允許持久連接。 定義&#xff1a; Keepalive允許客戶端和服務器在完成一次請求-響應后&#xff0c;保持連接處于打開狀態&#xff0c;以便后續請求復用同一連接&am…