【5分鐘學Docker】Docker快速使用

目錄

1. 概述

2. 基本操作

2.1. 鏡像操作

2.2. 容器操作

2.3. 運行操作

2.4. 鏡像保存

2.5. 鏡像分享

3. 高級操作

4. 掛載

4.1. 目錄掛載

4.2. 卷映射


1. 概述

Docker 鏡像有鏡像名稱和TAG

2. 基本操作

2.1. 鏡像操作

  1. 查看鏡像
docker images 
docker image ls
  1. 刪除鏡像
docker rmi imagesID
docker rmi 名稱:TAG
  1. 下載鏡像
docker pull nginx:1.26.0
  1. 搜索鏡像
docker search nginx

2.2. 容器操作

容器是運行起來的鏡像

  1. 運行容器
docker run
  1. 查看運行的容器
docker ps
  1. 停止/啟動/重啟
docker stop/start/restart CONTAINER_ID
docker stop/start/restart NAMES
  1. 進入鏡像
docker exec -it xxxxxNAMES /bin/bash
  1. 查看日志
# 動態獲取
docker logs -f 
# 靜態查看
docker logs
  1. 刪除
docker rm ID
# 強制刪除
docker rm -f ID

2.3. 運行操作

  1. 容器的端口可以重復,但是外部機器的端口不能重復
docker run -p <主機端口>:<容器端口> <鏡像名>
docker run -d --name mynginx -p 88:80 ngxin:TAG
-d: 后臺運行
--name:容器名稱
-p 端口映射: 80:88 內部80 外部訪問88
  1. 進入容器進行操作
docker exec -it <容器名稱> 交換腳本
docker exec -it mynginx /bin/bash

2.4. 鏡像保存

  1. 通過docker run 運行后,進行自定義安裝或者修改一些配置
  2. 然后提交修改內容:這里的mynginx是一個運行的容器
docker commit -m 'update index.thml' mynginx  mynginx:V1.0[root@sda ~]# docker commit -m 'update index.html' mynginx mynginx:V1.0
sha256:6d11a54e6725515d5559bf96fa6aeeda4b1daf79887eb78e6c3befeaadad27a0
  1. 提交后,通過docker images 可以看到有鏡像 myginx V1.0

  1. 然后在對鏡像進行保存成tar便于轉移到其他機器上
docker save -o mynginx.tar mynginx:V1.0
  1. 加載鏡像
 docker load -i mynginx.tar  -q-i 加載tar的文件-q 表示加載過程中不展示加載信息
  1. 運行
 docker run --name mynginx --rm -d -p 89:80 mynginx:V1.0
  1. 查看容器的占用
docker statsCONTAINER ID        NAME                               CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
9b54842016a0        mynginx                            0.00%               10.33MiB / 31.26GiB   0.03%               2.73kB / 2.05kB     0B / 0B             17
e2b4c27dbe59        work_nginx-server_1                0.00%               78.02MiB / 31.26GiB   0.24%               32.7GB / 32.5GB     7MB / 0B            17

2.5. 鏡像分享

# 改名
docker tag 舊名字 新名字 # 這個會復制一個新的,而不是直接改,可以把之前的刪除就行了
docker tag mynginx:V1.0 mynginx:V2.0[root@sda ~]# docker images
REPOSITORY   TAG    IMAGE ID            CREATED             SIZE
mynginx      V1.0   6d11a54e6725        15 hours ago        192MB
mynginx      V2.0   6d11a54e6725        15 hours ago        192MB

3. 高級操作

  1. 查詢所有的容器的ID
docker ps -aq
-a : 所有的鏡像
-q : 只打印容器ID[root@sda ~]# docker ps -aq
9b54842016a0
e2b4c27dbe59
694eeba1ae38
975bb0ad0124
0c0f3ddc3b79
  1. 刪除所有的容器
docker rm -f $(docker ps -aq)
-f:強制刪除
  1. 開機啟動
docker --restart always

4. 掛載

4.1. 目錄掛載

容器一旦重啟或者重新創建,那么文件數據都是丟失,所以這個時候需要通過掛載目錄,實現數據持久化

使用參數

-v /aa/aaa:/aaaa/bbb
-v 主機目錄:容器內目錄
如果一開始沒有/aa/aaa 那么他會自動創建。docker會以外部的數據為準,所以外部沒有數據
那么內部也是沒有數據的

4.2. 卷映射

當我們通過目錄掛載時,會發現因為-v是以外部為主,所以當我們使用目錄掛載,比如掛載容器的內部的默認配置文件時,會出現如果外部沒有這些配置文件,那么就會導致出現內部也沒有,那么容器就可能會啟動失敗,所以這個時候就需要用到卷映射

卷映射

-v 卷名:/etc/nginx
卷名不以./ 為名稱就是卷名,否是就是目錄掛載
docker run -d -p 89:80 --name mynginx -v /tmp/nginx/html:/usr/share/nginx/html -v ngconfig:/etc/nginx mynginx:V2.0

卷的數據都在哪里呢:默認都在/var/lib/docker/volumes/卷名/_data下

[root@sda html]# cd /var/lib/docker/volumes/ngconfig/
[root@sda ngconfig]# ls
_data
[root@sda ngconfig]# cd _data/
[root@sda ngconfig]# ls
conf.d  fastcgi_params  mime.types  modules  nginx.conf  scgi_params  uwsgi_params
[root@sda _data]# pwd
/var/lib/docker/volumes/ngconfig/_data
  1. 卷操作
1. 查看卷
docker volume ls 
2. 創建卷
docker volume create test
3. 查看某個卷的詳情
docker volume inpspect test

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

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

相關文章

5000字總結 HTML5 中的音頻和視頻,關羽標簽、屬性、API 和最佳實踐

HTML5 音頻與視頻開發完全指南&#xff1a;標簽、屬性、API 與最佳實踐 一、引言&#xff1a;HTML5 媒體時代的到來 在 HTML5 之前&#xff0c;網頁中的音頻和視頻播放依賴 Flash、Silverlight 等第三方插件&#xff0c;存在兼容性差、性能瓶頸和安全隱患。HTML5 引入的 <…

【C語言】(9)—指針3

文章目錄 一、字符指針的深入理解二、數組指針詳解三、二維數組傳參的本質四、函數指針及其應用五、函數指針數組與轉移表 一、字符指針的深入理解 1.1 字符指針的基本使用 字符指針(char*)是指向字符類型數據的指針&#xff0c;它有兩種常見的使用方式&#xff1a; // 方式一…

MDK調試技巧

1、自動生成反匯編 fromelf -c -o "$LL.txt" "#L" 解釋&#xff1a; 1、fromelf 是 ARM Compiler 工具鏈中的一個命令行工具&#xff0c;從fromelf這個名字上我們就能看到它是用來處理elf文件的&#xff0c;elf 全稱 Executable and Linking Format &…

嵌入式STM32學習——433M無線遙控燈

1.433M無限模塊工作原理&#xff1a; 數據發射模塊的工作頻率為315M&#xff0c;采用聲表諧振器SAW穩頻&#xff0c;頻率穩定度極高&#xff0c;當環境溫度在-25~85度之間變化時&#xff0c;頻飄僅為3ppm。 接收到信號&#xff0c;接收模塊對應針腳輸出高電平&#xff0c;有DO…

JDBC工具類的三個版本

一、JDBC連接數據庫的7個步驟 1、加載驅動 2、獲取連接 3、編寫sql 4、獲取執行sql的stmt對象 有兩種 stmt&#xff08;存在sql注入問題 字符串拼接&#xff09; pstmt&#xff08;預編譯可以防止sql注入&#xff09; 5、執行sql 拿到結果集 6、遍歷結果集 7、關閉資源…

3.1/Q1,Charls最新文章解讀

文章題目&#xff1a;Predictive model for sarcopenia in chronic kidney disease: a nomogram and machine learning approach using CHARLS data DOI&#xff1a;10.3389/fmed.2025.1546988 中文標題&#xff1a;慢性腎病肌肉減少癥的預測模型&#xff1a;使用 CHARLS 數據的…

DEEPPOLAR:通過深度學習發明非線性大核極坐標碼(2)

目錄 2.問題的提出和背景 2.1 信道編碼 2.2.極化碼 極坐標編碼 極坐標解碼 原文&#xff1a;《DEEPPOLAR: Inventing Nonlinear Large-Kernel Polar Codes via Deep Learning》 2.問題的提出和背景 2.1 信道編碼 信道編碼是一種為傳輸添加冗余的技術&#xff0c;使其對…

手機當電腦播放器 soundwire

soundwire server免費下載_soundwire serverPC下載_3DM軟件 win11可用延遲1秒 安卓端音頻緩沖區大小改成8k延遲就沒那么夸張了 我用audiorelay連上了沒聲音

LVGL中的事件

文章目錄 &#x1f9f1; 一、什么是 LVGL 事件&#xff1f;&#x1f3af; 二、事件回調的注冊參數解釋&#xff1a;示例&#xff1a; &#x1f4da; 三、常見事件類型&#xff08;lv_event_code_t&#xff09;? 1. 輸入類事件&#xff08;用戶交互&#xff09;? 2. 組件狀態類…

警惕C#版本差異多線程中的foreach陷阱

警惕C#版本差異多線程中的foreach陷阱? 同樣的代碼,不同的結果閉包捕獲的“時間差”問題繞過閉包陷阱的三種方法Lambda立即捕獲(代碼簡潔)顯式傳遞參數(兼容性最佳)使用Parallel.ForEach(官方推薦)注意事項:版本兼容性指南警惕多線程中的foreach陷阱:C#版本差異引發的…

mac u盤重裝mac10.15Catalina系統

我的電腦提mac2017的air 重裝過程 (文件夾中間有空格時為 Install\ macOS\ Catalina 才行) &#xff08;有需要的&#xff0c;最好做一下備份&#xff0c;有些東西可以及時找到配置和文件之類的&#xff0c; u盤制作是在mac電腦上操作的) 一、先下載系統鏡像文件或自行到官方…

說說es配置項的動態靜態之分和集群配置更新API

這天因為某件工作來到了es官網某個參數配置相關的頁面&#xff0c;注意到了下圖圓圈里的“Dynamic”&#xff1a; 鏈接&#xff1a;https://www.elastic.co/guide/en/elasticsearch/reference/8.1/modules-cluster.html#misc-cluster-settings 顯然這是對配置項的一個描述&am…

2025軟考【系統架構設計師】:兩周極限沖刺攻略(附知識點解析+答題技巧)

距離2025上半年“系統架構設計師”考試已經只剩最后兩周了&#xff0c;還沒有準備好的小伙伴趕緊行動起來。為了幫助大家更好的沖刺學習&#xff0c;特此提供一份考前沖刺攻略。本指南包括考情分析、答題技巧、注意事項三個部分&#xff0c;可以參考此指南進行最后的復習要領&a…

web animation API 鋒利的css動畫控制器 (更新中)

什么是web animation api 以及為什么要使用web animation api&#xff1f; web animation API 是web頁面中控制DOM元素動畫效果的javascript原生API。 它能夠逐個關鍵幀控制動畫效果&#xff0c;具有Timeline 機制?能通過javascript來實現動畫的暫停&#xff0c;播放&#x…

Linux基礎io知識

理解 "文件" 狹義理解 文件在磁盤里 磁盤是永久性存儲介質&#xff0c;因此文件在磁盤上的存儲是永久性的 磁盤是外設&#xff08;即是輸出設備也是輸入設備&#xff09; 磁盤上的文件 本質是對文件的所有操作&#xff0c;都是對外設的輸入和輸出 簡稱 IO 廣義理解…

視頻編解碼學習三之顯示器續

一、現在主流的顯示器是LCD顯示器嗎&#xff1f; 是的&#xff0c;現在主流的顯示器仍然是 LCD&#xff08;液晶顯示器&#xff0c;Liquid Crystal Display&#xff09;&#xff0c;但它已經細分為多種技術類型&#xff0c;并和其他顯示技術&#xff08;如OLED&#xff09;形成…

[測試]并發模擬工具Apache Bench 進行AB壓力測試

下載(windows) https://www.apachelounge.com/download/ 下載后解壓&#xff0c;解壓后進入bin目錄&#xff0c;打開CMD&#xff0c;即可使用 命令 ab.exe -n 請求總數 -c 并發數 http://網站/ 比如ab.exe -n 1000 -c 100 http://127.0.0.1:5555/ 看不懂的話直接把結果讓AI分析…

LeetCode 熱題 100 138. 隨機鏈表的復制

LeetCode 熱題 100 | 138. 隨機鏈表的復制 大家好&#xff0c;今天我們來解決一道經典的鏈表問題——隨機鏈表的復制。這道題在 LeetCode 上被標記為中等難度&#xff0c;要求深拷貝一個帶有隨機指針的鏈表。 問題描述 給你一個長度為 n 的鏈表&#xff0c;每個節點包含一個額…

開源分享:TTS-Web-Vue系列:Vue3實現固定頂部與吸頂模式組件

&#x1f3af; 本文是TTS-Web-Vue系列的第十三篇文章&#xff0c;重點介紹項目中固定頂部導航和內容區域吸頂模式的實現方案。通過這些優化&#xff0c;我們大幅提升了用戶在滾動頁面時的交互體驗&#xff0c;使關鍵操作區域始終可見&#xff0c;同時實現了更現代化的界面視覺效…

Docker、Docker-compose、K8s、Docker swarm之間的區別

1.Docker docker是一個運行于主流linux/windows系統上的應用容器引擎&#xff0c;通過docker中的鏡像(image)可以在docker中構建一個獨立的容器(container)來運行鏡像對應的服務&#xff1b; 例如可以通過mysql鏡像構建一個運行mysql的容器&#xff0c;既可以直接進入該容器命…