關於 Docker Offload
Docker Offload 是一項完全託管的服務,用於使用您已熟悉的 Docker 工具(包括 Docker Desktop、Docker CLI 和 Docker Compose)在雲端構建和執行容器。它將您的本地開發工作流擴充套件到可擴充套件的、由雲驅動的環境中,因此您可以解除安裝計算密集型任務、加速構建,並在整個軟體生命週期中安全地管理容器工作負載。
Docker Offload 還支援 GPU 加速例項,允許您容器化並執行計算密集型工作負載,例如 Docker Model Runner 以及其他受益於 GPU 的機器學習或資料處理任務。
關鍵特性
Docker Offload 包含以下功能以支援現代容器工作流
- 基於雲的構建:在遠端、完全託管的 BuildKit 例項上執行構建
- GPU 加速:使用由 NVIDIA L4 GPU 支援的環境進行機器學習、媒體處理和其他計算密集型工作負載。
- 臨時的雲執行器:為每個容器會話自動配置和拆除雲環境。
- 共享構建快取:透過智慧的共享快取層,加快跨機器和團隊成員的構建速度。
- 混合工作流:使用 Docker Desktop 或 CLI 在本地和遠端執行之間無縫切換。
- 安全通訊:在 Docker Desktop 和雲環境之間使用加密隧道,並支援安全金鑰和映象拉取。
- 埠轉發和繫結掛載:即使在雲中執行容器,也能保持本地開發體驗。
- VDI 友好:在虛擬桌面環境或不支援巢狀虛擬化的系統中使用 Docker Offload。
為何使用 Docker Offload?
Docker Offload 旨在支援在本地和雲環境之間工作的現代開發團隊。它能幫助您:
- 將繁重的構建和執行任務解除安裝到快速、可擴充套件的基礎設施上
- 加速開發和測試中的反饋迴圈
- 執行需要比本地設定提供更多資源的容器
- 透過即時訪問 GPU 驅動的環境來構建和執行 AI 應用
- 使用 Docker Compose 管理需要雲資源的複雜多服務應用
- 無需管理自定義基礎設施即可維護一致的環境
- 在受限或低功耗環境(如 VDI)中高效開發
Docker Offload 是高效率開發工作流的理想選擇,這些工作流既需要雲的靈活性,又不想犧牲本地工具的簡便性。
Docker Offload 的工作原理
Docker Offload 透過將 Docker Desktop 連線到安全的專用雲資源,替代了在本地構建或執行容器的需求。
使用 Docker Offload 進行構建
當您使用 Docker Offload 進行構建時,`docker buildx build` 命令會將構建請求傳送到雲端的遠端 BuildKit 例項,而不是在本地執行。您的工作流程保持不變,只是執行環境發生了變化。
構建在由 Docker 配置和管理的基礎設施上執行
- 每個雲構建器都是一個獨立的 Amazon EC2 例項,擁有自己的 EBS 卷
- 遠端構建器使用共享快取來加速跨機器和團隊成員的構建
- 構建結果在傳輸過程中被加密,併發送到您指定的目標(如登錄檔或本地映象儲存)
Docker Offload 自動管理構建器的生命週期。無需配置或維護基礎設施。
注意Docker Offload 構建器目前託管在美國東部地區。其他地區的使用者可能會遇到延遲增加的情況。
使用 Docker Offload 執行容器
當您使用 Docker Offload 執行容器時,Docker Desktop 會建立一個到雲端執行的 Docker 守護程序的安全 SSH 隧道。您的容器完全在那個遠端環境中啟動和管理。
以下是工作流程:
- Docker Desktop 連線到雲並觸發容器建立。
- Docker Offload 拉取所需的映象並在雲端啟動容器。
- 在容器執行時,連線保持開啟狀態。
- 當容器停止執行時,環境會自動關閉並清理。
這種設定避免了在本地執行容器的開銷,即使在低功耗機器上也能實現快速、可靠的容器執行,包括那些不支援巢狀虛擬化的機器。這使得 Docker Offload 非常適合使用虛擬桌面、雲託管開發機或舊硬體等環境的開發人員。
Docker Offload 還支援 GPU 加速的工作負載。需要 GPU 訪問的容器可以在配置了 NVIDIA L4 GPU 的雲實例上執行,以實現高效的 AI 推理、媒體處理和通用 GPU 加速。這使得諸如模型評估、影像處理和硬體加速的 CI 測試等計算密集型工作流能夠在雲中無縫執行。
儘管是遠端執行,但繫結掛載和埠轉發等功能仍然無縫工作,在 Docker Desktop 和 CLI 內部提供了類似本地的體驗。
Docker Offload 為每個會話配置一個臨時的雲環境。當您與 Docker Desktop 互動或積極使用容器時,該環境保持活動狀態。如果大約 5 分鐘內未檢測到任何活動,會話將自動關閉。這包括該環境中的任何容器、映象或卷,它們在會話結束時都將被刪除。
接下來做什麼
透過遵循 Docker Offload 快速入門,親身體驗 Docker Offload。