使用預設的 Compose Bridge 轉換
目錄
Compose Bridge 為您的 Compose 配置檔案提供開箱即用的轉換。基於任意 compose.yaml
檔案,Compose Bridge 生成:
- 一個 名稱空間,以便您的所有資源都被隔離,並且不與其他部署的資源衝突。
- 一個 ConfigMap,其中包含 Compose 應用程式中每個 配置 資源的條目。
- 應用程式服務的 部署。這確保了您的應用程式的指定例項數量在 Kubernetes 叢集中得以維護。
- 用於服務暴露埠的 服務,用於服務間通訊。
- 用於服務釋出埠的 服務,型別為
LoadBalancer
,以便 Docker Desktop 也會在主機上暴露相同的埠。 - 網路策略,以複製您
compose.yaml
檔案中定義的網路拓撲。 - 您的卷的 PersistentVolumeClaims,使用
hostpath
儲存類,以便 Docker Desktop 管理卷的建立。 - 包含您編碼的秘密的 Secrets。這旨在用於測試環境中的本地使用。
它還提供了一個專門用於 Docker Desktop 的 Kustomize 覆蓋,包括:
- 需要暴露主機埠的服務的
LoadBalancer
。 - 一個
PersistentVolumeClaim
,用於使用 Docker Desktop 儲存提供程式desktop-storage-provisioner
更有效地處理卷供應。 - 一個 Kustomize 檔案,用於將所有資源連結在一起。
使用預設的 Compose Bridge 轉換
要使用預設轉換,請執行以下命令:
$ docker compose bridge convert
Compose 在當前目錄中查詢 compose.yaml
檔案,然後將其轉換。
成功後,Compose Bridge 生成 Kubernetes 清單並記錄類似於以下內容的輸出:
$ docker 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
檔案,可以執行:
$ docker compose bridge convert -f <path-to-file>/compose.yaml
要檢視所有可用標誌,請執行:
$ docker compose bridge convert --help
提示您可以從 Compose 檔案檢視器將 Compose 專案轉換並部署到 Kubernetes 叢集。
確保您已登入 Docker 賬戶,導航到“**容器**”檢視中的容器,然後在右上角選擇“**檢視配置**”,然後選擇“**轉換並部署到 Kubernetes**”。