使用默认的 Compose Bridge 转换

实验性

Compose Bridge 是一个实验性产品。

Compose Bridge 为您的 Compose 配置文件提供开箱即用的转换。基于任意的compose.yaml文件,Compose Bridge 生成

  • 一个命名空间,以便所有资源都相互隔离,不会与其他部署的资源发生冲突。
  • 一个ConfigMap,其中包含 Compose 应用程序中每个配置资源的条目。
  • 为应用程序服务提供部署。这确保了您的应用程序指定数量的实例在 Kubernetes 集群中得到维护。
  • 为服务公开的端口提供服务,用于服务间通信。
  • 服务 用于您服务发布的端口,类型为LoadBalancer,以便 Docker Desktop 也会在主机上公开相同的端口。
  • 网络策略 用于复制compose.yaml文件中定义的网络拓扑。
  • 持久卷声明 用于您的卷,使用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 并部署”。

下一步是什么?