使用預設的 Compose Bridge 轉換

實驗性

Compose Bridge 是一個實驗性產品。

Compose Bridge 為您的 Compose 設定檔提供開箱即用的轉換。基於任意 compose.yaml 檔案,Compose Bridge 產生

  • 一個 命名空間ConfigMap設定 資源的項目。
  • 部署服務,用於服務間通訊,對應服務所開放的連接埠。
  • 服務,用於服務所發佈的連接埠,類型為 `LoadBalancer`,以便 Docker Desktop 也會在主機上公開相同的連接埠。
  • 網路政策,用於複製 `compose.yaml` 檔案中定義的網路拓撲。
  • 永久性磁碟區宣告 (PersistentVolumeClaims),使用 `hostpath` 儲存類別,以便 Docker Desktop 管理磁碟區建立。
  • 密鑰,其中包含編碼的密鑰。這設計用於測試環境中的本地使用。

它還提供了一個專用於 Docker Desktop 的 Kustomize 覆蓋,其中包含

  • 需要在主機上公開連接埠的服務的 `Loadbalancer`。
  • 一個 `PersistentVolumeClaim`,使用 Docker Desktop 儲存供應器 `desktop-storage-provisioner` 更有效地處理磁碟區供應。
  • 一個 Kustomize 檔案,用於將所有資源連結在一起。

使用預設的 Compose Bridge 轉換

要使用預設轉換,請執行以下命令

$ compose-bridge convert

Compose 會在目前目錄中尋找 `compose.yaml` 檔案,然後進行轉換。

將顯示以下輸出

$ compose-bridge convert -f compose.yaml 
Kubernetes resource api-deployment.yaml created
Kubernetes resource db-deployment.yaml created
Kubernetes resource web-deployment.yaml created
Kubernetes resource api-expose.yaml created
Kubernetes resource db-expose.yaml created
Kubernetes resource web-expose.yaml created
Kubernetes resource 0-avatars-namespace.yaml created
Kubernetes resource default-network-policy.yaml created
Kubernetes resource private-network-policy.yaml created
Kubernetes resource public-network-policy.yaml created
Kubernetes resource db-db_data-persistentVolumeClaim.yaml created
Kubernetes resource api-service.yaml created
Kubernetes resource web-service.yaml created
Kubernetes resource kustomization.yaml created
Kubernetes resource db-db_data-persistentVolumeClaim.yaml created
Kubernetes resource api-service.yaml created
Kubernetes resource web-service.yaml created
Kubernetes resource kustomization.yaml created

然後,這些檔案會儲存在專案的 `/out` 資料夾中。

然後可以使用 Kubernetes 資訊清單,使用標準部署命令 `kubectl apply -k out/overlays/desktop/` 在 Kubernetes 上執行應用程式。

注意

在部署 Compose Bridge 轉換之前,請確保已在 Docker Desktop 中啟用 Kubernetes。

如果要轉換位於其他目錄中的 `compose.yaml` 檔案,可以執行

$ compose-bridge convert -f <path-to-file>/compose.yaml 

要查看所有可用標誌,請執行

$ compose-bridge convert --help

提示

您現在可以從 Compose 檔案檢視器將 Compose 專案轉換並部署到 Kubernetes 叢集。

請確保您已登入 Docker 帳戶,導覽至「容器」視圖中的容器,然後在右上角選擇「檢視設定」,再選擇「轉換並部署到 Kubernetes」。

下一步是什麼?