Linux系統中快速安裝docker

1 查看是否安裝docker

要檢查Ubuntu是否安裝了Docker,可以使用以下幾種方法:

方法1:使用 docker --version 命令

docker --version

如果Docker已安裝,輸出會顯示Docker的版本信息,例如:

Docker version 20.10.10, build b485636

如果Docker未安裝,你將看到類似以下的錯誤信息:

Command 'docker' not found, but can be installed with:
sudo apt install docker.io

方法2:使用 which docker 命令

which docker

如果Docker已安裝,此命令會顯示Docker可執行文件的路徑,例如:

/usr/bin/docker

如果Docker未安裝,命令不會產生輸出。

方法3:檢查Docker服務狀態

systemctl status docker

如果Docker已安裝且正在運行,你將看到服務的詳細狀態信息。如果Docker未安裝或未運行,輸出將類似于:

Unit docker.service could not be found.

方法4:檢查已安裝的包

你還可以檢查系統中是否安裝了Docker包。

檢查 docker
dpkg -l | grep docker

檢查 docker.io
dpkg -l | grep docker.io

如果Docker已安裝,你會看到與Docker相關的包信息,例如:

ii  docker-ce       5:20.10.10~3-0~ubuntu-focal amd64        Docker: the open-source application container engine
ii  docker-ce-cli   5:20.10.10~3-0~ubuntu-focal amd64        Docker CLI: the open-source application container engine

安裝Docker

如果你的系統中沒有安裝Docker,可以使用以下步驟安裝Docker。

查詢版本號

snap info docker

在這里插入圖片描述

完整步驟如下:

使用 apt 包管理器可以直接安裝指定版本的 docker.io 包。雖然這種方法更簡單,但 docker.io 包可能不是官方的最新版本。以下是如何使用 apt 安裝特定版本的 docker.io

1. 更新包信息

sudo apt update

2. 查找可用的 Docker 版本

使用 apt-cache 查看可用的 docker.io 版本:

apt-cache madison docker.io

這將列出所有可用的 docker.io 版本。例如:

 docker.io | 20.10.17-0ubuntu1~20.04.1 | http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packagesdocker.io | 20.10.12-0ubuntu2~20.04.1 | http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages...

在這里插入圖片描述

3. 安裝特定版本的 Docker

找到所需版本后,使用以下命令安裝,例如20.10.17:

sudo apt install docker.io=20.10.21-0ubuntu1~18.04.3

4. 防止自動升級

為了防止 docker.io 包在系統升級時自動升級到新版本,可以將其保持在當前版本:

sudo apt-mark hold docker.io

5. 啟動并啟用 Docker 服務

sudo systemctl start docker
sudo systemctl enable docker
  • 啟動服務start 命令會立即啟動服務,但不會配置其在系統重啟后自動啟動。
  • 啟用服務enable 命令會配置服務在系統啟動時自動啟動,但不會立即啟動服務。

6. 驗證安裝

docker --version

docker官方網站寄了,換國內鏡像網站,跟pip,conda一樣

vi /etc/docker/daemon.json

{
“registry-mirrors”: [“https://ustc-edu.cn.mirror.aliyuncs.com/”,“https://ccr.ccs.tencentyun.com/”,“https://docker.m.daocloud.io/”]
}

systemctl daemon-reload
systemctl restart docker

容器重啟策略

當Ubuntu虛擬機關機或重啟后,原先運行在Docker中的容器會停止。如果你重新啟動虛擬機并運行 docker ps 命令,你將看不到那些原先運行的容器,因為它們已經停止。

但是,這些容器并沒有被刪除,你可以通過 docker ps -a 命令查看所有(包括停止的)容器。

重新啟動容器

如果你希望在系統重啟后自動重新啟動容器,可以為容器設置重啟策略。Docker 提供了幾種重啟策略,你可以在運行容器時通過 --restart 選項來設置:

  • no:默認值。容器退出時不會自動重啟。
  • on-failure:如果容器由于錯誤退出(非零退出狀態),則自動重啟。
  • always:無論退出狀態如何,始終自動重啟。
  • unless-stopped:始終自動重啟,除非容器是手動停止的。

示例

使用 --restart 選項設置容器的重啟策略:

docker run \-e RABBITMQ_DEFAULT_USER=itheima \-e RABBITMQ_DEFAULT_PASS=123321 \-v mq-plugins:/plugins \--name mq \--hostname mq \-p 15672:15672 \-p 5672:5672 \--network hmall \--restart always \-d \rabbitmq:3.8-management

在上面的命令中,--restart always 參數確保容器在Docker守護進程啟動時(例如系統重啟后)自動重啟。

啟動和停止 Docker 容器

當系統重啟后,使用以下命令來手動啟動和停止容器:

  • 查看所有容器,包括已停止的

    docker ps -a
    
  • 啟動一個已停止的容器

    docker start <container_name_or_id>
    
  • 停止一個運行中的容器

    docker stop <container_name_or_id>
    

進一步說明

使用重啟策略可以確保容器在系統重啟后自動恢復運行,提供了一種簡單的方法來管理容器的高可用性,特別是對于需要持續運行的服務。

的容器**:

docker start <container_name_or_id>
  • 停止一個運行中的容器

    docker stop <container_name_or_id>
    

進一步說明

使用重啟策略可以確保容器在系統重啟后自動恢復運行,提供了一種簡單的方法來管理容器的高可用性,特別是對于需要持續運行的服務。

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

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

相關文章

ElasticSearch 分詞器

文章目錄 一、安裝中文分詞插件Linux安裝7.14.1版本&#xff1a;測試1&#xff1a;ik_smart測試2&#xff1a;ik_max_word 二、es內置的分詞器&#xff1a;三、拼音插件安裝以及&#xff08;IKpinyin使用&#xff09;配置 IK pinyin 分詞配置 一、安裝中文分詞插件 IK Analys…

arm64位FFmpeg與X264庫

參考鏈接&#xff1a; https://blog.csdn.net/gitblog_09700/article/details/142945092

機器學習與深度學習4:數據集處理Dataset,DataLoader,batch_size

深度學習中&#xff0c;我們能看到別人的代碼中都有一個繼承Dataset類的數據集處理過程&#xff0c;這也是深度學習處理數據集的的基礎&#xff0c;下面介紹這個數據集的定義和使用&#xff1a; 1、數據集加載 1.1 通用的定義 Bach&#xff1a;表示每次喂給模型的數據 Epoc…

MySQL數據庫和表的操作之SQL語句

&#x1f3af; 本文專欄&#xff1a;MySQL深入淺出 &#x1f680; 作者主頁&#xff1a;小度愛學習 MySQL數據庫和表的操作 關系型數據庫&#xff0c;都是遵循SQL語法進行數據查詢和管理的。 SQL語句 什么是sql SQL&#xff1a;結構化查詢語言(Structured Query Language)&…

ubuntu開發mcu環境

# 編輯 vim或者vscode # 編譯 arm-none-eabi # 燒寫 openocd 若是默認安裝&#xff0c;會在/usr/share/openocd/scripts/{interface,target} 有配置接口和目標版配置 示例&#xff1a; openocd -f interface/stlink-v2.cfg -f target/stm32f1x.cfg 啟動后&#xff0c;會…

Windows模仿Mac大小寫切換, 中英文切換

CapsLock 功能優化腳本部署指南 部署步驟 第一步&#xff1a;安裝 AutoHotkey v2 訪問 AutoHotkey v2 官網下載并安裝最新版本安裝時勾選 "Add Compile Script to context menus" 第二步&#xff1a;部署腳本 直接運行 (調試推薦) 新建文本文件&#xff0c;粘貼…

Selenium Web自動化如何快速又準確的定位元素路徑,強調一遍是元素路徑

如果文章對你有用&#xff0c;請給個贊&#xff01; 匹配的ChromeDriver和瀏覽器版本是更好完成自動化的基礎&#xff0c;可以從這里去下載驅動程序&#xff1a; 最全ChromeDriver下載含win linux mac 最新版本134.0.6998.165 持續更新..._chromedriver 134-CSDN博客 如果你問…

CSRF vs SSRF詳解

一、CSRF&#xff08;跨站請求偽造&#xff09;攻擊全解 攻擊原理示意圖 受害者瀏覽器 ├── 已登錄銀行網站&#xff08;Cookie存活&#xff09; └── 訪問惡意網站執行&#xff1a;<img src"http://bank.com/transfer?tohacker&amount1000000">核心…

Python PDF解析利器:pdfplumber | AI應用開發

Python PDF解析利器&#xff1a;pdfplumber全面指南 1. 簡介與安裝 1.1 pdfplumber概述 pdfplumber是一個Python庫&#xff0c;專門用于從PDF文件中提取文本、表格和其他信息。相比其他PDF處理庫&#xff0c;pdfplumber提供了更直觀的API和更精確的文本定位能力。 主要特點…

niuhe 插件教程 - 配置 MCP讓AI更聰明

niuhe 插件官方教程已經上線, 請訪問: http://niuhe.zuxing.net niuhe 連接 MCP 介紹 API 文檔的未來&#xff1a;MCP&#xff0c;讓協作像聊天一樣簡單. MCP 是 Model Context Protocol(模型上下文協議)的縮寫&#xff0c;是 2024 年 11 月 Claude 的公司 Anthropic 推出并開…

26考研——排序_插入排序(8)

408答疑 文章目錄 二、插入排序基本概念插入排序方法直接插入排序算法描述示例性能分析 折半插入排序改進點算法步驟性能分析 希爾排序相關概念示例分析希爾排序的效率效率分析空間復雜度時間復雜度 九、參考資料鮑魚科技課件26王道考研書 二、插入排序 基本概念 定義&#x…

精華貼分享|從不同的交易理論來理解頭肩形態,殊途同歸

本文來源于量化小論壇策略分享會板塊精華帖&#xff0c;作者為孫小迪&#xff0c;發布于2025年2月17日。 以下為精華帖正文&#xff1a; 01 前言 學習了一段時間交易后&#xff0c;我發現在幾百年的歷史中&#xff0c;不同門派的交易理論對同一種市場特征的稱呼不一樣&#x…

leetcode437.路徑總和|||

對于根結點來說&#xff0c;可以選擇當前結點為路徑也可以不選擇&#xff0c;但是一旦選擇當前結點為路徑那么后續都必須要選擇結點作為路徑&#xff0c;不然路徑不連續是不合法的&#xff0c;所以這里分開出來兩個方法進行遞歸 由于力扣最后一個用例解答錯誤&#xff0c;分析…

北斗導航 | 改進奇偶矢量法的接收機自主完好性監測算法原理,公式,應用,RAIM算法研究綜述,matlab代碼

改進奇偶矢量法的接收機自主完好性監測算法研究 摘要 接收機自主完好性監測(RAIM)是保障全球導航衛星系統(GNSS)安全性的核心技術。針對傳統奇偶矢量法在噪聲敏感性、多故障隔離能力上的缺陷,本文提出一種基于加權奇偶空間與動態閾值的改進算法。通過引入觀測值權重矩陣重…

深度神經網絡全解析:原理、結構與方法對比

深度神經網絡全解析&#xff1a;原理、結構與方法對比 1. 引言 隨著人工智能的發展&#xff0c;深度神經網絡&#xff08;Deep Neural Network&#xff0c;DNN&#xff09;已經成為圖像識別、自然語言處理、語音識別、自動駕駛等領域的核心技術。相比傳統機器學習方法&#x…

經典論文解讀系列:MapReduce 論文精讀總結:簡化大規模集群上的數據處理

&#x1f9e0; MapReduce 論文解讀總結&#xff1a;簡化大規模集群上的數據處理 原文標題&#xff1a;MapReduce: Simplified Data Processing on Large Clusters 作者&#xff1a;Jeffrey Dean & Sanjay Ghemawat 發表時間&#xff1a;2004 年 發表機構&#xff1a;Google…

通過Appium理解MCP架構

MCP即Model Context Protocol&#xff08;模型上下文協議&#xff09;&#xff0c;是由Anthropic公司于2024年11月26日推出的開放標準框架&#xff0c;旨在為大型語言模型與外部數據源、工具及系統建立標準化交互協議&#xff0c;以打破AI與數據之間的連接壁壘。 MCP架構與Appi…

網頁版五子棋項目的問題處理

文章目錄 config.WebSocketConfig將鍵值對加?OnlineUserManager中線程安全、鎖ObjectMapper來處理json針對多開情況的判定處理連接關閉、異常&#xff08;玩家中途退出&#xff09;后的不合理操作游戲大廳數據更新 config.WebSocketConfig 把MatchAPI注冊進去 ? 在addHandle…

【初探數據結構】歸并排序與計數排序的序曲

&#x1f4ac; 歡迎討論&#xff1a;在閱讀過程中有任何疑問&#xff0c;歡迎在評論區留言&#xff0c;我們一起交流學習&#xff01; &#x1f44d; 點贊、收藏與分享&#xff1a;如果你覺得這篇文章對你有幫助&#xff0c;記得點贊、收藏&#xff0c;并分享給更多對數據結構感…

算法刷題記錄——LeetCode篇(8.7) [第761~770題](持續更新)

更新時間&#xff1a;2025-03-30 算法題解目錄匯總&#xff1a;算法刷題記錄——題解目錄匯總技術博客總目錄&#xff1a;計算機技術系列博客——目錄頁 優先整理熱門100及面試150&#xff0c;不定期持續更新&#xff0c;歡迎關注&#xff01; 763. 劃分字母區間 給你一個字…