在Docker中,如何更改Docker的預設儲存設定?

黄嘉波發表於2024-03-09

要更改Docker的預設儲存設定,通常指的是調整其儲存驅動、儲存位置或者相關儲存配置。以下是針對不同目的的一般步驟:

一. 更改儲存驅動(例如 devicemapper、overlay2、aufs 等)
  1. 檢查當前儲存驅動

    docker info | grep Storage
    

    這將顯示當前Docker使用的儲存驅動型別。

  2. 更改儲存驅動

    • 通常,Docker在首次安裝時會選擇適用於系統的最佳儲存驅動。但如果你需要手動更改,這通常涉及對 /etc/docker/daemon.json 檔案的編輯或建立。

    • 開啟或建立 /etc/docker/daemon.json 檔案,並新增或修改 "storage-driver" 設定:

      {
          "storage-driver": "overlay2"
      }
      

      其中,將 "overlay2" 替換為你想要使用的儲存驅動名稱。

  3. 重啟Docker服務

    sudo systemctl daemon-reload
    sudo systemctl restart docker
    

    注意:不是所有的Linux發行版或核心版本都支援所有型別的儲存驅動,因此在更改之前務必確認所選驅動是否適用且正確配置。

二. 更改儲存位置(Docker的資料根目錄)
  1. 檢視當前儲存位置

    docker info | grep "Root Dir"
    
   
2. **停止Docker服務**:
   ```bash
   sudo systemctl stop docker
  1. 建立新的儲存目錄

    sudo mkdir -p /path/to/new/docker-storage
    
  2. 遷移資料
    將現有 /var/lib/docker 下的所有資料遷移到新目錄,比如:

    sudo rsync -av /var/lib/docker/ /path/to/new/docker-storage/
    
  3. 更新Docker配置
    編輯或建立 /etc/docker/daemon.json 檔案,加入 "data-root" 設定:

    {
        "data-root": "/path/to/new/docker-storage"
    }
    
  4. 重新載入Systemd配置

    sudo systemctl daemon-reload
    
  5. 啟動Docker服務

    sudo systemctl start docker
    
  6. 驗證更改
    再次執行 docker info 並檢查儲存相關的輸出。

  7. 許可權修正
    確保新目錄擁有正確的許可權,如有必要可適當調整。

三. 注意事項
  • 在更改儲存設定前,請確保有足夠的磁碟空間,並考慮對執行中的容器和資料的影響。
  • 不同的儲存驅動可能需要特定的配置,例如,對於某些儲存驅動(如devicemapper),可能需要提前準備邏輯卷或裝置對映。
  • 修改系統級配置需謹慎操作,避免因誤操作導致Docker服務無法正常啟動。

相關文章