跳到主要内容

一篇关于“部署”标签的文章

查看所有标签

使用 Podman 桌面构建你的 Kubernetes 应用程序

·阅读时长 5 分钟
Shipra Singh
技术作家

Podman 桌面与 Kubernetes 的集成帮助你将应用程序运行在 Kubernetes 集群上,例如 Kind 或 Minikube。

本博客涵盖以下方面

  • 从注册表镜像构建容器化应用程序
  • 创建 Pod
  • 设置本地 Kubernetes 集群
  • 将应用程序部署到 Kubernetes
  • 验证正在运行的服务

构建容器化应用程序

通过本博客,你将构建一个使用以下内容的容器化应用程序

  • 后端 Redis 服务器容器
  • 前端 Python 应用程序容器

为此,你可以从 quay.io 注册表中拉取相关镜像。

  1. 转到 **镜像** 组件页面。

  2. 点击 **拉取**。 从注册表拉取

  3. 启动第一个容器

    1. 输入要从注册表拉取的镜像名称。例如,quay.io/podman-desktop-demo/podify-demo-backend输入镜像名称
    2. 点击 **拉取镜像**。会打开一个下载完成通知。
    3. 点击 **完成**。
    4. 点击与新添加镜像相对应的 **运行镜像** 图标。 运行镜像
    5. 输入容器名称 redis-server
    6. 点击 **启动容器**。 启动后端容器
    7. 点击 **日志** 选项卡以查看 Redis 服务器是否在独立模式下运行。 查看日志选项卡
  4. 启动第二个容器

    1. 输入要从注册表拉取的镜像名称。例如,quay.io/podman-desktop-demo/podify-demo-frontend

    2. 点击 **拉取镜像**,然后点击 **完成**。

    3. 点击与新添加镜像相对应的 运行镜像 图标。

    4. 输入容器名称 python-app输入镜像名称

      注意

      如果默认端口已被使用,则可以在“端口映射”字段中指定一个不同的端口。

    5. 选择 **网络** 选项卡,并输入主机名为 redis-server,IP 地址为 10.88.0.2 以启用与 Redis 服务器的通信。

      注意

      你可以在 redis-server 容器详细信息页面的 **检查** 选项卡中找到 IP 地址。

    6. 点击 **启动容器**。 启动前端容器

    7. 点击 **日志** 选项卡以查看应用程序是否在端口 5000 上运行。 前端应用正在运行

    8. 点击页面右侧的 **打开浏览器** 图标。

    9. 查看正在运行的前端应用程序。 运行前端应用程序

创建 Pod

你可以使用这两个容器来创建一个 Pod。这样,前端和后端容器应用程序就可以共享资源,例如存储和网络。

使用现有容器创建 Pod

  1. 转到 **容器** 页面。
  2. 选择前端和后端容器。
  3. 点击 **创建 Pod** 按钮。 从容器创建 Pod
  4. 点击 **创建 Pod**。 将容器复制到 Pod
  5. 在 Pod 页面上查看新创建的 Pod。
  6. 点击 Pod 的名称,然后点击 **摘要** 选项卡以查看其摘要。 查看 Pod 详细信息

替代方法:使用 Kubernetes YAML 创建 Pod

你可以为任何现有的 Pod 或容器生成 Kubernetes 清单,并使用它来创建本地 Kubernetes YAML 文件。然后,你可以自定义该文件并从中创建一个 Pod。

在创建 Pod 时,你可以选择一个运行时来指示你是否要在 Podman 引擎或 Kubernetes 集群上运行 Pod。根据你的选择,你可以在 Pod 组件页面上看到新创建的 Pod 在该环境中运行。

以下过程创建了一个在 Podman 引擎上运行的 Pod。

  1. 转到 **Pod** 页面。
  2. 点击与 Pod 相对应的溢出菜单图标。 溢出菜单图标
  3. 从下拉列表中选择 **生成 Kube** 选项。
  4. 在 **Kube** 选项卡中查看 Kubernetes YAML 配置。 kube 清单
  5. 复制配置并将其粘贴到机器上的 YAML 文件中。
  6. 编辑 YAML 配置并保存。
  7. 转到 **Pod** 组件页面。
  8. 点击 **播放 Kubernetes YAML**。 播放 kubernetes yaml
  9. 从机器上选择 YAML 文件。
  10. 检查 **运行时** 字段是否设置为 Podman 容器引擎
  11. 点击 **播放**,然后点击 **完成**。
  12. 在同一页面上查看新创建的 Pod。

创建 Pod 后,设置本地 Kubernetes 集群以部署 Pod。

设置本地 Kubernetes 集群

你可以设置一个本地 Kubernetes 集群。一旦集群连接并运行,你就可以将你的应用程序部署到它。

根据你的喜好,使用 Kind 或 Minikube 扩展

  1. 从扩展目录中安装扩展
  2. 创建 Kubernetes 集群。参见 Kind 集群创建Minikube 集群创建

创建 Kubernetes 集群后,你可以在 Kubernetes 组件页面上查看正在运行的控制平面节点和正在运行的 Kubernetes 服务。该页面还显示集群已连接。

将应用程序部署到 Kubernetes

你可以将应用程序 Pod 部署到具有活动连接的 Kubernetes 集群,并通过服务访问它。此外,任何作为 Pod 部署的容器都可以部署到 Kubernetes 集群。

  1. 选择你的Kubernetes 上下文

  2. 转到 **Pod** 组件页面。

  3. 点击与 Pod 相对应的溢出菜单图标。 溢出菜单图标

  4. 从下拉列表中选择 **部署到 Kubernetes** 选项。

  5. 选中复选框以使用 Ingress 控制器在本地公开服务。 在本地公开服务

    注意

    当你在运行镜像时配置自定义端口映射时,你将获得从下拉列表中选择 Ingress 主机端口的选项。 ingress-host-port 否则,你将看不到该选项。

  6. 点击 **部署**,然后点击 **完成**。

验证正在运行的服务

  1. 转到 **Kubernetes** 组件页面。

  2. 执行以下步骤

    1. 点击 **服务** 选项以查看新创建的服务 my-pod-5000已创建服务
    2. 点击 **Ingress 和路由** 选项以查看新创建的 Ingress my-pod已创建 Ingress
    注意

    使用 **应用 YAML** 按钮可以直接应用 Kubernetes YAML 文件以创建资源。