溫馨提示×

centos掛載的容器技術

小樊
48
2025-08-10 15:58:46
欄目: 智能運維

在CentOS上使用容器技術時,掛載主要涉及Docker和Kubernetes兩種場景,以下是核心方法及要點:

一、Docker掛載技術

1. 宿主機目錄掛載到容器

  • 命令行方式
    使用-v--mount參數將宿主機目錄掛載到容器指定路徑,支持綁定掛載命名卷

    # 綁定掛載(直接映射宿主機目錄)
    docker run -v /宿主機路徑:/容器路徑 鏡像名
    
    # 命名卷(由Docker管理存儲)
    docker run -v 卷名:/容器路徑 鏡像名
    

    示例:將宿主機/data目錄掛載到容器/app/data,并設置為只讀:

    docker run -v /data:/app/data:ro nginx
    
  • 注意事項

    • 避免直接掛載單個文件(可能導致更新不同步),優先掛載目錄。
    • 可通過:ro參數指定只讀,防止容器內修改宿主機文件。

2. 數據卷容器共享

  • 創建一個專門用于存儲的容器,其他容器通過--volumes-from掛載其數據卷:
    # 創建數據卷容器
    docker run -v /shared-data:/data --name data-container centos
    
    # 其他容器掛載該數據卷
    docker run --volumes-from data-container --name app-container centos
    

二、Kubernetes掛載技術

1. NFS存儲掛載(跨節點共享)

  • 步驟

    1. 安裝NFS服務(CentOS):
      sudo yum install nfs-utils
      sudo mkdir -p /mnt/nfs
      sudo echo "/mnt/nfs *(rw,sync,no_subtree_check)" >> /etc/exports
      sudo systemctl start nfs-server
      sudo exportfs -a
      
    2. Kubernetes中創建PV和PVC
      • PV(存儲資源):定義NFS路徑和訪問模式(如accessModes: ReadWriteMany)。
      • PVC(存儲申請):聲明所需存儲大小,綁定到PV。
    3. Pod中掛載PVC
      volumes:
      - name: nfs-vol
        persistentVolumeClaim:
          claimName: nfs-pvc
      volumeMounts:
      - name: nfs-vol
        mountPath: /容器路徑
      
  • 優勢:支持跨節點Pod共享數據,Pod刪除后數據保留。

2. 其他存儲卷類型

  • EmptyDir:臨時存儲,Pod刪除后數據清除,適用于緩存。
  • HostPath:掛載宿主機目錄,僅適用于單節點測試,無法跨節點。

三、關鍵注意事項

  1. 權限問題

    • 確保宿主機目錄權限正確(如chmod 777),避免容器無法訪問。
    • 掛載時可通過:ro:rw指定讀寫權限。
  2. 啟動順序

    • 若依賴遠程存儲(如NFS),需通過systemd配置依賴關系,確保掛載完成后再啟動容器。
  3. 數據持久化

    • 優先使用命名卷、NFS或云存儲,避免容器重啟后數據丟失。

參考資料:

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女