<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      創建的容器都是沒有指定 volume的,為什么docker volume ls命令會看到很多volume列表?

      有那么一天,停止了世界所有的容器(在你電腦上),執行以下命令

      docker volume ls
      
      docker volume ls | wc -l
      

      哎呦,我去,怎么這么多啥玩意,再執行以下命令看占了我多少磁盤空間

      # 使用 docker inspect 命令(如果 volume 驅動支持大小 Size 報告):
      docker volume inspect <volume_name> --format '{{ .Size }}'
      
      # 查看所有 volumes 的詳細信息(這玩意不太準,可以當做估算大小吧)
      docker system df -v
      
      # 更精確
      sudo du -sh /var/lib/docker/volumes/*
      
      # 如果你想要更精確的結果,可以直接查看 Docker volume 的存儲位置的實際磁盤占用大小
      # linux通常在 /var/lib/docker/volumes/ 目錄下
      # 在 macOS 上,Docker Desktop 使用的是一個特殊的虛擬機來運行 Docker 引擎,因此 Docker volumes 的實際存儲位置比較特殊:
      # ~/Library/Containers/com.docker.docker/Data/vms/0/data/docker/volumes/
      # 還有一個 macOS 下的 orbstack
      # OrbStack Docker volumes 的默認存儲路徑(跟 docker volume inspect 命令輸出的不一致)
      # 通過 brew 安裝的 orbstack Docker volumes 的默認存儲路徑(通過下面命令找到了)
      find / -type d -name "volumes" 2>/dev/null | grep -i orbstack
      /System/Volumes/Data/Users/<your_username>/OrbStack/docker/volumes
      ~/OrbStack/docker/volumes
      

      這是因為 Docker 有一個特性叫做"匿名卷"(Anonymous Volumes)。即使你沒有顯式指定 volume,Docker 也會在以下情況自動創建 volume:

      1.Dockerfile 中的 VOLUME 指令

      # 當 Dockerfile 包含這樣的指令時,會自動創建匿名卷
      VOLUME /data
      

      2.Docker Compose/Swarm/Stack 中的隱式聲明

      services:
        db:
          image: mysql
          # MySQL 鏡像的 Dockerfile 中定義了 VOLUME,會自動創建
      

      3.某些鏡像的默認行為

      比如:

      • MySQL 會為數據目錄創建 volume
      • Redis 會為數據文件創建 volume
      • MongoDB 會為數據庫文件創建 volume

      查看這些自動創建的 volume 的來源:

      # 查看 volume 詳細信息
      docker volume inspect volume_name
      
      # 查看容器的 volume 掛載信息
      docker inspect container_name | grep -A 10 "Mounts"
      

      那么真正需要的問題來,不知道也就算了,現在知道了,我們不希望莫名其妙多了好多莫名的 volume,應該清理?以及如何保持純凈或最佳實踐?

      清理建議:

      1.使用 docker volume ls -f dangling=true 查看未被使用的 volume
      2.使用 docker volume prune 清理未使用的 volume
      3.如果要避免創建匿名卷,可以:

      • 在 docker run 時使用 --rm 參數(容器刪除時自動刪除匿名卷)
      • 顯式定義具名卷(named volume)
      • 使用 bind mount 替代 volume

      docker volume 相關命令

      docker volume 幫助命令

      docker volume --help
      

      列出所有 volumes

      docker volume ls
      

      查看指定的 volume 的詳細信息

      docker volume inspect <volume_name>
      

      查看哪些容器正在使用特定的 volume

      docker ps -a filter volume=<volume_name>
      

      查看 volume 的具體內容

      ls /var/lib/docker/volumes/<volume_name>/_data
      

      查看 dangling (未被使用) 的 volumes

      docker volume ls -f dangling=true
      

      刪除指定的 volume

      docker volume rm <volume_name>
      

      列出并刪除指定條件的 volumes

      docker volume ls -qf dangling=true | xargs -r docker volume rm
      

      刪除所有未使用的 volumes

      docker volume prune
      

      最佳實踐是在生產環境中使用具名卷,這樣更容易管理和維護:

      # 創建具名卷
      docker run -v my_volume:/data image_name
      

      非生產環境,比如開發/測試環境,使用 tmpfs,性能更高,這樣容器刪除或重啟會直接清空,無殘留

      # 創建使用 tmpfs 的容器
      docker run --tmpfs /app/cache nginx
      
      # 可以指定大小和權限
      docker run --tmpfs /app/cache:rw,size=1g,noexec nginx
      # or
      # 限制 tmpfs 大小
      docker run --tmpfs /tmp:size=100M nginx
      # 設置權限
      docker run --tmpfs /tmp:rw,noexec,nosuid,size=100M nginx
      
      # 臨時文件
      docker run --tmpfs /tmp nginx
      
      # 會話數據
      docker run --tmpfs /app/sessions my-web-app
      
      # 緩存數據
      docker run --tmpfs /app/cache redis
      

      tmpfs 不適用的場景

      • 數據庫等需要持久化的
      • 用戶上傳文件等需要支持持久化的
      • 配置文件
      • 日志文件

      更佳的混合使用策略

      # docker-compose.yml 示例
      services:
        web:
          image: nginx
          volumes:
            - ./data:/app/data        # 持久化數據使用 volume
          tmpfs:
            - /tmp                    # 臨時文件使用 tmpfs
            - /app/cache             # 緩存使用 tmpfs
      

      總結:

      • tmpfs 適合處理臨時數據、緩存和敏感信息
      • 需要持久化的數據還是應該使用 volume 或 bind mount
      • 建議根據數據特性選擇合適的存儲方式,可以混合使用不同的存儲策略
      posted @ 2025-01-09 09:47  taadis  閱讀(257)  評論(0)    收藏  舉報
      掃碼關注

      掃碼關注我

      主站蜘蛛池模板: 免费无遮挡无码永久视频| 中文字幕色偷偷人妻久久| 免费人成在线观看网站| 免费无码成人AV片在线| 成人婷婷网色偷偷亚洲男人的天堂| 亚洲中文字幕人成影院| 亚洲各类熟女们中文字幕| 人妻精品动漫h无码| 国产在线午夜不卡精品影院| 国产成人高清亚洲一区91| 天堂亚洲免费视频| 亚洲中文字幕av天堂| 国产一区二区三区不卡视频 | 果冻传媒一区二区天美传媒| 成人无码潮喷在线观看| 免费看成人aa片无码视频吃奶 | 国产成人啪精品视频免费软件 | 被c到高潮疯狂喷水国产| 国产偷国产偷亚洲综合av| 国产成人精品亚洲精品日日| 午夜激情福利一区二区| 日韩精品无码一区二区视频| 国产mv在线天堂mv免费观看| 亚洲国产精品久久久天堂麻豆宅男| 少妇被躁爽到高潮无码文| 人妻加勒比系列无码专区| 精品偷自拍另类精品在线| AV最新高清无码专区| 国产一级r片内射免费视频| 欧美日韩国产综合草草| 国产精一品亚洲二区在线播放 | 国产乱码日韩精品一区二区| 久久96热在精品国产高清| 五河县| 91高清免费国产自产拍| 又大又紧又粉嫩18p少妇| 国产愉拍精品手机| 久久综合97丁香色香蕉| 成人区人妻精品一区二区| 在线高清免费不卡全码| 五河县|