4、docker數據卷管理命令 | docker volume

1、命令總覽

命令作用出現頻率備注
★ docker volume create新建卷-d?指定驅動,-o?指定驅動選項
★ docker volume ls列出卷--filter dangling=true?查孤兒卷
★ docker volume inspect查看卷詳情輸出 JSON,可加?--format
★ docker volume rm刪除卷只能刪已停止容器的卷
docker volume prune批量清理孤兒卷危險操作,會二次確認
docker volume cp宿主機?卷 拷文件需 24.0+ 的 CLI,等同于?docker cp
docker volume update修改卷標簽/驅動參數僅少數驅動支持
docker volume use在?docker run?里使用卷其實是?--mount?或?-v?的語法糖

卷與 bind mount 區別:卷由 Docker 管理,遷移/備份更方便;bind mount 直接映射宿主機路徑,性能稍高但可移植性差。

2、docker volume create

用于在本地或遠程驅動上“先創建、后使用”一個持久化卷;創建完即可通過 docker run -v / --mount 把卷掛載到容器中。

docker volume create [OPTIONS] [VOLUME_NAME]
選項作用示例
-d, --driver指定卷驅動(默認 local)-d nfs
--label加標簽,便于過濾--label env=prod
-o, --opt驅動級參數-o type=tmpfs -o device=tmpfs

docker volume create
├─ --driver ?, -d ? ? ? ? ?? 插件名(local|nfs|ceph|rbd|ebs|oss...)
├─ --name ? ? ? ? ? ? ? ? ? 卷名,省略時自動生成 ID
├─ --label ? ? ? ? ? ? ? ? ?? key=value 元數據,可多次出現
└─ --opt ? ? , -o ? ? ? ? ? ? 驅動級鍵值對,出現次數不限
├─ 當 driver = local
│ ? ├─ type ? ? ?= none | bind | tmpfs | nfs | btrfs | ext4 | xfs ...
│ ? ├─ device ? ?= <路徑|設備|遠程地址>
│ ? ├─ o ? ? ? ? = <掛載選項字符串,逗號分隔>
│ ? │ ? ├─ 通用 ?: rw/ro, relatime, sync, uid=..., gid=..., size=...
│ ? │ ? ├─ nfs ? : addr=..., vers=3|4, proto=tcp|udp, timeo=600 ...
│ ? │ ? └─ tmpfs : size=100m, mode=1770, nr_inodes=1m ...
│ ? └─ 其他 local-only 鍵
│ ? ? ? ├─ size ?= 100m ? ? ? ? ? ?# 某些驅動支持配額
│ ? ? ? └─ keyfile = /path/key ? ? # 加密卷
└─ 當 driver ≠ local
├─ 各云廠商/分布式存儲自有鍵
│ ? ├─ ebs ? ? ?: size, iops, type(gp2|io1), encrypted, kms-key-id ...
│ ? ├─ ceph/rbd : pool, image, user, secret ...
│ ? ├─ alicloud/oss : bucket, accesskeyid, accesskeysecret, region ...
│ ? └─ glusterfs : volid, servers, gid, uid, direct-mount-mode ...
└─ 任意自定義鍵(由第三方驅動文檔定義)

# 創建名為 myvol 的本地卷
docker volume create myvol# 驗證
docker volume ls
docker volume inspect myvol# 使用 vieux/sshfs 驅動,把遠端目錄掛成卷
docker volume create \--driver vieux/sshfs \--opt sshcmd=user@192.168.1.10:/data \--opt password=secret \sshfs-vol# 一次性加多個標簽
docker volume create \--label project=blog \--label env=staging \blog-uploads# 按標簽過濾
docker volume ls --filter label=project=blog# 創建 100 MB 的 tmpfs 卷(內存盤)
docker volume create \--driver local \--opt type=tmpfs \--opt device=tmpfs \--opt o=size=100m \memvol# 創建 ext4 格式的 loop 設備卷
docker volume create \--driver local \--opt type=none \--opt o=bind \--opt device=/dev/loop0 \loopdisk# 直接創建匿名卷(Docker 自動生成一串 ID 作為名字)
docker volume create
# 典型用法:docker run -v /data ... 會自動產生匿名卷

3、docker volume ls

# 簡單列出所有卷
docker volume ls# 只顯示沒有被任何容器引用的“孤兒卷”
docker volume ls --filter dangling=true# 根據 label 過濾
docker volume ls --filter label=env=prod# 按創建時間倒序
docker volume ls --format "table {{.Name}}\t{{.Driver}}\t{{.CreatedAt}}"

4、docker volume inspect

# 查看卷完整 JSON
docker volume inspect html# 只取 Mountpoint 字段(宿主機目錄)
docker volume inspect html \--format '{{.Mountpoint}}'# 同時查看多個卷
docker volume inspect html prod-data

5、docker volume rm

# 刪除單個卷
docker volume rm html# 強制刪除多個卷(即使被引用也會報錯)
docker volume rm prod-data logs# 利用 xargs 批量刪除孤兒卷
docker volume ls -q -f dangling=true | xargs docker volume rm

6、docker volume prune

# 交互式清理所有孤兒卷
docker volume prune# 非交互(腳本里用)
docker volume prune -f

7、docker volume cp (CLI ≥ 24.0)

# 把宿主機文件拷進卷
echo "hello" > /tmp/index.html
docker volume cp /tmp/index.html html:/index.html# 把卷里的目錄拷回宿主機
docker volume cp html:/var/log/nginx ./logs

8、docker volume update

# 僅某些驅動支持,給卷追加標簽
docker volume update prod-data --label-replace env=staging

9、在容器中使用卷(run / compose)

# 方式1:-v 簡寫(宿主機路徑可省略,則自動用卷)
docker run -d \--name web \-v html:/usr/share/nginx/html \nginx:alpine# 方式2:--mount 更明確(推薦)
docker run -d \--name db \--mount type=volume,src=mysql-data,dst=/var/lib/mysql,volume-driver=local \mysql:8# 只讀掛載
docker run -d \--name app \--mount type=volume,src=config,dst=/etc/app,readonly \myapp:latest# docker-compose.yml 示例
version: "3.9"
services:api:image: myapivolumes:- type: volumesource: uploadstarget: /app/uploadsvolume:nocopy: true          # 禁止初始化復制
volumes:uploads:driver: local

10、備份 & 恢復卷數據(經典方案)

# 備份:啟動一個臨時容器把卷打包
docker run --rm \-v html:/data \-v $(pwd):/backup \alpine tar czf /backup/html-backup.tar.gz -C /data .# 恢復:反向操作
docker run --rm \-v html:/data \-v $(pwd):/backup \alpine sh -c "cd /data && tar xzf /backup/html-backup.tar.gz"

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

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

相關文章

計數組合學7.14(對偶 RSK 算法)

7.14 對偶 RSK 算法 存在 RSK 算法的一種變體&#xff0c;其與乘積 ∏i,j(1xiyj)\prod_{i,j}(1 x_{i}y_{j})∏i,j?(1xi?yj?) 的關系類似于 RSK 算法本身與 ∏i,j(1?xiyj)?1\prod_{i,j}(1 - x_{i}y_{j})^{-1}∏i,j?(1?xi?yj?)?1 的關系。我們稱此變體為對偶 RSK 算法…

C語言中的進程、線程與進程間通信詳解

目錄 引言 基本概念 1. 進程&#xff08;Process&#xff09; 2. 線程&#xff08;Thread&#xff09; 線程編程實戰 1. 常見線程庫 2. 合理設置線程數 3. pthread 創建線程 線程同步機制 1. 互斥鎖 pthread_mutex_t 2. 條件變量 pthread_cond_t 3. 讀寫鎖 pthread…

[假面騎士] 555淺談

假面騎士555(faiz)是我最先接觸的一部平成系列的假面騎士&#xff0c;同時也是我個人最喜歡的一部假面騎士。一、大綱簡介震驚&#xff0c;人類最新的進化形態——奧菲一諾&#xff0c;橫空出世&#xff01;日本的頂級財團&#xff0c;Smart Brain&#xff0c;的前任社長&#…

Vue Router 路由的創建和基本使用(超詳細)

一、路由的基本概念 你是否好奇單頁應用&#xff08;SPA&#xff09;是如何在不刷新頁面的情況下實現頁面切換的&#xff1f;這就離不開路由的功勞。 路由&#xff1a;本質是一組 key-value 的對應關系&#xff0c;在前端領域中&#xff0c;key 通常是路徑&#xff0c;value …

深入理解設計模式:策略模式的藝術與實踐

在軟件開發中&#xff0c;我們經常會遇到需要根據不同情況選擇不同算法或行為的場景。傳統的做法可能是使用大量的條件語句&#xff08;if-else或switch-case&#xff09;&#xff0c;但隨著需求的增加和變化&#xff0c;這種硬編碼的方式會導致代碼難以維護和擴展。策略模式&a…

概率/期望 DP llya and Escalator

題目鏈接&#xff1a;Problem - D - Codeforces 看了這篇文章來的&#xff1a;【算法學習筆記】概率與期望DP - RioTian - 博客園 這篇博客寫得挺好的&#xff0c;講了一些常見方法&#xff0c;概率 / 期望的題多練練就上手了。 題目大意&#xff1a; n 個人排隊上電梯&…

大陸電子MBDS開發平臺轉到其他國產控制器平臺產生的問題記錄

u8_StComLowSpdGearSwt變量為例&#xff0c;之前用的時候只有輸入&#xff0c;沒什么實際意義&#xff0c;導致新環境下編譯報錯&#xff0c;缺少聲明&#xff0c;解決辦法&#xff1a;注釋掉輸入模塊。今天解決的另一個比較大的問題&#xff0c;不同模型函數公用函數模塊生成代…

機器學習模型調優實戰指南

文章目錄模型選擇與調優&#xff1a;從理論到實戰1. 引言2. 模型評估&#xff1a;為選擇提供依據2.1 偏差-方差權衡2.2 數據集劃分與分層抽樣2.3 交叉驗證&#xff08;Cross-Validation&#xff09;2.4 信息準則&#xff08;AIC / BIC&#xff09;3. 超參數調優&#xff1a;讓模…

【教程】Unity CI/CD流程

測試機&#xff1a;紅帽 Linux8 源碼倉庫&#xff1a;Gitee - MrRiver/Unity Example ? 系統環境準備 1&#xff09;yum 源 sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo sudo sed -i s/\$releasever/8/g /etc/yum.repos…

文獻閱讀 | Briefings in Bioinformatics | Hiplot:全面且易于使用的生物醫學可視化分析平臺

文獻介紹文獻題目&#xff1a; Hiplot&#xff1a;一個綜合且易于使用的 Web 服務&#xff0c;用于增強出版物準備的生物醫學數據可視化 研究團隊&#xff1a; Openbiox/Hiplot 社區 發表時間&#xff1a; 2022-07-05 發表期刊&#xff1a; Briefings in Bioinformatics 影響因…

【數字圖像處理系列筆記】Ch04:灰度變換與空間域圖像增強(2)

目錄 一、空域濾波基礎 一、空域濾波的基本概念 二、空域濾波的數學原理 三、空域濾波器的分類與典型示例 &#xff08;一&#xff09;線性濾波器&#xff08;Linear Filter&#xff09; &#xff08;二&#xff09;非線性濾波器&#xff08;Non-linear Filter&#xff0…

AI浪潮下,FPGA如何實現自我重塑與行業變革

引言&#xff1a;AI 與 FPGA&#xff0c;新時代的碰撞 2025 年&#xff0c;人工智能技術迎來爆發式增長&#xff0c;大模型、生成式 AI 和多模態技術持續突破&#xff0c;人形機器人量產元年正式開啟&#xff0c;自動駕駛商業化進程加速&#xff0c;工業數字化轉型全面鋪開(1)…

系統集成項目管理工程師【第十一章 規劃過程組】定義范圍、創建WBS、規劃進度管理和定義活動篇

系統集成項目管理工程師【第十一章 規劃過程組】定義范圍、創建WBS、規劃進度管理和定義活動篇 一、定義范圍&#xff1a;給項目畫好"邊界線" 定義范圍是明確項目和產品"做什么、不做什么"的過程&#xff0c;直接影響后續所有工作的方向。 1. 核心概念與作…

Spring Boot 參數校驗全指南

Spring Boot 參數校驗全指南 在 Web 開發中&#xff0c;參數校驗是保障接口安全性和數據合法性的關鍵環節。手動編寫校驗邏輯不僅繁瑣&#xff0c;還容易遺漏邊界情況。Spring Boot 整合了 validation 工具&#xff0c;提供了一套簡潔高效的參數校驗方案&#xff0c;可快速實現…

常用技術資料鏈接

1.team技術 https://zhuanlan.zhihu.com/p/11389323664 https://blog.csdn.net/Lucky_Lu0/article/details/121697151 2.bond切換主備 https://www.xgss.net/3306.html 3.ssh詳解&#xff1a; https://cloud.tencent.com/developer/news/105165 https://blog.huochengrm.c…

【Spring Cloud】-- 注冊中心

文章目錄1. 什么是注冊中心2. CPA理論1. 什么是注冊中心 注冊中心有三種角色&#xff1a; 服務提供者&#xff08;Server&#xff09; &#xff1a;提供接口給其他微服務的程序。服務消費者&#xff08;Client&#xff09;&#xff1a;調用其他微服務提供的接口。**服務注冊中…

go-zero 詳解

go-zero 詳解 go-zero 是一個基于 Go 語言的微服務框架&#xff0c;由字節跳動團隊開發并開源&#xff0c;旨在幫助開發者快速構建高可用、高性能的微服務架構。它集成了豐富的組件&#xff0c;簡化了微服務開發中的常見問題&#xff08;如服務注冊發現、配置管理、限流熔斷等&…

接口自動化框架封裝之統一請求封裝及通過文件實現接口關聯

接口自動化測試框架封裝目的:簡化自動化框架的落地,提高投入和產出比,只要一個人封裝好框架,另外的測試通過寫yaml測試用例即可實現接口自動化1.統一請求的封裝去除多余重復的代碼可跨py文件實現通過一個session來自動關聯有cookie的接口設置統一公共參數,統一文件處理,統一異常…

Vue 最佳實踐:如何利用唯一 key 值保證 el-table 動態渲染的穩定性

&#x1f4cb; 問題描述 在Vue 2.0 ElementUI項目的偏置條件管理頁面中&#xff0c;每次切換到"內規拉偏"菜單時&#xff0c;表格樣式會發生崩潰&#xff0c;導致表格布局異常、列寬錯亂、固定列顯示不正確等問題。 &#x1f50d; 問題分析 通過深入分析代碼&#x…

popen開啟進程,寫入數據

通過管道&#xff08;popen&#xff09;啟動 SDIWAN_WEB 進程并寫入 JSON 數據的過程可以分為以下步驟&#xff0c;結合代碼示例和關鍵注意事項進行說明&#xff1a;1. 核心代碼示例 #include <stdio.h> #include <json-c/json.h>int main() {// 1. 創建 JSON 對象…