docker基礎與常用命令

目錄

一.docker概述

1.docker與虛擬機區別

2.Linux 六大命名空間

3.Docker 的核心技術及概念

二.docker部署安裝

三.docker常用命令

1.搜索鏡像

2.獲取鏡像

3.查看鏡像信息

4.添加鏡像標簽

5.刪除鏡像

6.存出與載入鏡像

7.上傳鏡像

8.創建容器

9.查看容器狀態

10.容器的啟動、關閉與重啟

11.創建并啟動容器

12.進入容器

13.文件復制

14.容器導出與導入

15.刪除容器


一.docker概述

1.docker與虛擬機區別

特性Docker 容器虛擬機
啟動速度秒級分鐘級
計算能力損耗幾乎無損耗 50%左右
性能接近原生弱于
系統支持量(單機)上千個幾十個
隔離性資源隔離/限制完全隔離

容器化的優勢

  • 靈活:即使是最復雜的應用也可以集裝箱化。

  • 輕量級:容器利用并共享主機內核。

  • 可互換:可以即時部署更新和升級。

  • 便攜式:可以在本地構建,部署到云,并在任何地方運行。

  • 可擴展:可以增加并自動分發容器副本。

  • 可堆疊:可以垂直和即時堆疊服務。

2.Linux 六大命名空間

命名空間縮寫作用效果
MNT掛載文件系統隔離每個命名空間可以有自己的文件系統掛載點
NET網絡網絡資源隔離每個命名空間可以有自己的網絡棧,包括網絡接口、路由表等
PID進程進程號隔離每個命名空間有自己獨立的 PID 編號空間
IPC間通進程間通信隔離每個命名空間有自己獨立的 System V IPC 和 POSIX 消息隊列
UTS主機主機名、域名隔離每個命名空間可以有自己的主機名和域名
USER用戶用戶名、組名隔離每個命名空間可以有自己的用戶和組 ID 映射

3.Docker 的核心技術及概念

Docker 容器本質上是宿主機的一個進程,通過以下技術實現資源隔離和限制:

  • Namespace:實現資源隔離。

  • Cgroup:實現資源限制。

  • 寫時復制技術(Copy-on-Write):實現高效的文件操作。

docker核心概念:鏡像、容器、鏡像倉庫

二.docker部署安裝

1.關閉防火墻

systemctl stop firewalld.service
setenforce 0

2.安裝依賴包

yum install -y yum-utils device-mapper-persistent-data lvm2

3.設置阿里源

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4.安裝docker-ce并設置開機自啟動

yum install -y docker-ce docker-ce-cli containerd.io
systemctl start docker.service
systemctl enable docker.service

三.docker常用命令

1.搜索鏡像

docker search 關鍵字

2.獲取鏡像

docker pull 倉庫名稱[:標簽]

3.查看鏡像信息

docker images

docker inspect 鏡像ID號(查看鏡像詳細信息)

4.添加鏡像標簽

docker tag 名稱:[標簽] 新名稱:[新標簽]

如:docker tag nginx:latest nginx:web

5.刪除鏡像

  • docker rmi 倉庫名稱:標簽:刪除指定標簽的鏡像

  • docker rmi 鏡像ID號:徹底刪除鏡像

如:docker rmi nginx:web

6.存出與載入鏡像

存出鏡像:

docker save -o 存儲文件名 存儲的鏡像

如:docker save -o nginx nginx:latest

載入鏡像:

docker load < 存出的文件 或docker load -i 存出的文件

如:docker load < nginx

7.上傳鏡像

docker push 用戶名/鏡像名稱:新標簽

8.創建容器

  • 格式docker create [選項] 鏡像

  • 常用選項

    • -i:開啟標準輸入接受用戶輸入命令。

    • -t:分配一個偽終端 tty。

    • -it:合起來實現和容器交互的作用,運行一個交互式會話 shell。

如:docker create -it nginx:latest /bin/bash

9.查看容器狀態

docker ps -a

10.容器的啟動、關閉與重啟

docker start/stop/restart 容器ID

11.創建并啟動容器

docker run [選項] 鏡像 [命令]

docker run -itd image_name:tag [/bin/bash.....] 下載并將鏡像運行為容器(-i 讓容器可以接受宿主機的指令、-t 為容器分配一個偽終端,讓用戶可以"登錄"進容器,-d 分配一個守護進程,這樣可以讓容器運行時不占用前臺終端)

12.進入容器

  • docker exec -it 容器ID/名稱 /bin/bash

如:docker exec -it 2592d3fad0fb /bin/bash

13.文件復制

  • 復制到容器

    echo abc123 > ~/test.txt
    docker cp ~/test.txt 2592d3fad0fb:/opt/
  • 從容器復制到主機

    docker cp 2592d3fad0fb:/opt/test.txt ~/abc123.txt

14.容器導出與導入

導出:
? docker export 2592d3fad0fb > centos7.tar

?導入:
? cat centos7.tar | docker import - centos7:test
?

15.刪除容器

docker rm [-f] 容器ID/名稱

  • 刪除已終止容器

    docker stop 2592d3fad0fb
    docker rm 2592d3fad0fb
  • 強制刪除運行容器

    docker rm -f 2592d3fad0fb

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

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

相關文章

Cypress與多語言后端集成指南

Cypress 簡介 基于 JavaScript 的前端測試工具,可以對瀏覽器中運行的任何內容進行快速、簡單、可靠的測試Cypress 是自集成的,提供了一套完整的端到端測試,無須借助其他外部工具,安裝后即可快速地創建、編寫、運行測試用例,且對每一步操作都支持回看不同于其他只能測試 UI…

計算機畢業設計ssm基于JavaScript的餐廳點餐系統 SSM+Vue智慧餐廳在線點餐管理平臺 JavaWeb前后端分離式餐飲點餐與桌臺調度系統

計算機畢業設計ssm基于JavaScript的餐廳點餐系統0xig8788&#xff08;配套有源碼 程序 mysql數據庫 論文&#xff09; 本套源碼可以在文本聯xi,先看具體系統功能演示視頻領取&#xff0c;可分享源碼參考。掃碼點單、手機支付、后廚實時出票已經成為食客對餐廳的基本預期。傳統的…

wedo稻草人-----第32節(免費分享圖紙)

夸克網盤&#xff1a;https://pan.quark.cn/s/ce4943156861 高清圖紙源文件&#xff0c;需要的請自取

Jmeter函數的使用

函數名作用用法${__Random(,,)}${__RandomString(,,)}隨機生成一些東西${__Random(000,999,)} ${__Random(${test1},${test2},)}${__RandomString(${__Random(3,9,)},asdfghjkl,)}${__time(,)}獲取當前的時間戳&#xff0c;也可以定義格式${__CSVRead(,)}讀取CSV文件的格式&…

Windows 用戶賬戶控制(UAC)繞過漏洞

漏洞原理CVE-2021-31199 是一個 Windows 用戶賬戶控制&#xff08;UAC&#xff09;繞過漏洞&#xff0c;CVSS 3.1 評分 7.8&#xff08;高危&#xff09;。其核心原理如下&#xff1a;UAC 機制缺陷&#xff1a;Windows UAC 通過限制應用程序權限提升系統安全性&#xff0c;但某…

comfyUI-controlNet-線稿軟邊緣

{WebUI&comfyUI}∈Stable Diffuision&#xff0c;所以兩者關于ContrlNet的使用方法的核心思路不會變&#xff0c;變的只是comfyUI能夠讓用戶更直觀地看到&#xff0c;并且控制生圖的局部過程。 之前的webUI中涉及到ContrlNet部分知識&#xff1a;SD-細節控制-CSDN博客 概…

SOEM build on ubuntu

1.配置 soem2.編譯 soem3.結果4.記錄一下自己的開發環境家里臺式機

STM32--USART串口通信的應用(第一節串口通信的概念)

咱們今天呢給大家講解咱們 stm32 開發當中的串口的應用啊 &#xff0c; 串口這個專題呢啊是我們那 個學習上必須要掌握的一個外設串口有什么作用呢&#xff0c;其實在我們以后的這個開發程序當中&#xff0c;咱們可能經常需要用到一些調試 信息&#xff0c;對吧&#xff1f; 啊…

STM32F407ZGT6天氣時鐘+實時溫濕度顯示(附源碼)

文章目錄實現功能&#xff1a;項目展示&#xff1a;代碼解析&#xff1a;實現功能&#xff1a; 1.主要功能&#xff1a;通過485通信獲取傳感器溫濕度&#xff0c;溫濕度數據顯示、實時時鐘顯示與用戶交互。使用LVGL在顯示屏上展示傳感器溫濕度數據&#xff0c;并提供UI設置溫度…

和鯨社區深度學習基礎訓練營2025年關卡4

使用 pytorch 構建一個簡單的卷積神經網絡&#xff08;CNN&#xff09;模型&#xff0c;完成對 CIFAR-10 數據集的圖像分類任務。 直接使用 CNN 進行分類的模型性能。 提示&#xff1a; 數據集&#xff1a;CIFAR-10 網絡結構&#xff1a;可以使用 2-3 層卷積層&#xff0c;ReLU…

前端性能優化全攻略:從加載到渲染

目錄 前言網絡請求優化資源加載優化JavaScript執行優化渲染優化用戶體驗優化性能監控與分析總結 前言 隨著Web應用復雜度不斷提升&#xff0c;前端性能優化變得尤為重要。本文將系統性地介紹從資源加載到頁面渲染的全鏈路性能優化策略&#xff0c;幫助開發者構建高效、流暢的…

hiredis: 一個輕量級、高性能的 C 語言 Redis 客戶端庫

目錄 1.簡介 2.安裝和配置 2.1.源碼編譯安裝&#xff08;通用方法&#xff09; 2.2.包管理器安裝&#xff08;特定系統&#xff09; 2.3.Windows 安裝 3.常用的函數及功能 3.1.連接管理函數 3.2.命令執行函數 3.3.異步操作函數 3.4.回復處理函數 3.5.錯誤處理 3.6.…

TCP套接字

1.概念套接字是專門進行網絡間數據通信的一種文件類型&#xff0c;可以實現不同主機之間雙向通信&#xff0c;包含了需要交換的數據和通信雙方的IP地址和port端口號。2.套接字文件的創建int socket(int domain, int type, int protocol); 功能&#xff1a;該函數用來創建各種各…

Go語言高并發聊天室(一):架構設計與核心概念

Go語言高并發聊天室&#xff08;一&#xff09;&#xff1a;架構設計與核心概念 &#x1f680; 引言 在當今互聯網時代&#xff0c;實時通信已成為各類應用的核心功能。從微信、QQ到各種在線協作工具&#xff0c;高并發聊天系統的需求無處不在。本系列文章將手把手教你使用Go語…

Java基礎:泛型

什么是泛型&#xff1f; 簡單來說&#xff0c;Java泛型是JDK 5引入的一種特性&#xff0c;它允許你在定義類、接口和方法時使用類型參數&#xff08;Type Parameters&#xff09;。這些類型參數可以在編譯時被具體的類型&#xff08;如 String, Integer, MyCustomClass 等&…

RMSNorm實現

當前Qwen、Llama等系列RMSNorm實現源碼均一致。具體現實如下&#xff1a; class RMSNorm(nn.Module):def __init__(self, hidden_size, eps1e-6):super().__init__()self.weight nn.Parameter(torch.ones(hidden_size))self.variance_epsilon epsdef forward(self, hidden_s…

智能Agent場景實戰指南 Day 11:財務分析Agent系統開發

【智能Agent場景實戰指南 Day 11】財務分析Agent系統開發 文章標簽 AI Agent,財務分析,LLM應用,智能財務,Python開發 文章簡述 本文是"智能Agent場景實戰指南"系列第11篇&#xff0c;聚焦財務分析Agent系統的開發。文章深入解析如何構建一個能夠自動處理財務報表…

人工智能安全基礎復習用:可解釋性

一、可解釋性的核心作用1. 錯誤檢測與模型改進發現模型的異常行為&#xff08;如過擬合、偏見&#xff09;&#xff0c;優化性能。例&#xff1a;醫療模型中&#xff0c;可解釋性幫助識別誤診原因。2. 安全與可信性關鍵領域&#xff08;醫療、軍事&#xff09;需透明決策&#…

Qt:QCustomPlot類介紹

QCustomPlot的核心類就是QCustomPlot類。這個類繼承自QWidget&#xff0c;因此可以像其他QWidget一樣使用&#xff0c;比如放入布局中。QCustomPlot類基本結構一個QCustomPlot對象可以包含多個圖層&#xff08;通過QCPLayer表示&#xff09;&#xff0c;通常使用默認圖層。它包…

Visual Studio 2022 上使用ffmpeg

目錄 1. 添加包含目錄 2. 添加庫目錄 3. 添加依賴項 4. 添加動態庫目錄 5. 測試 在解決方案中右擊項目名稱&#xff0c;彈出的窗口中選擇 "屬性"。 1. 添加包含目錄 "C/C" -> "常規" -> "附加包含目錄"中添加 ffmpeg中的…