跳至主要内容

一篇标签为“Kubernetes-application”的文章

查看所有标签

使用 Podman Desktop 构建您的 Kubernetes 应用程序

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

Podman Desktop 与 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 在 Pods 组件页面上的该环境中运行。

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

  1. 转到 **Pods** 页面。
  2. 点击对应于 Pod 的溢出菜单图标。 溢出菜单图标
  3. 从下拉列表中选择 **生成 Kube** 选项。
  4. 在 **Kube** 选项卡中查看 Kubernetes YAML 配置。 kube 清单
  5. 复制该配置并将其粘贴到您机器上的 YAML 文件中。
  6. 编辑 YAML 配置并保存。
  7. 转到 **Pods** 组件页面。
  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. 转到 **Pods** 组件页面。

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

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

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

    注意

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

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

验证正在运行的服务

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

  2. 执行以下步骤

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

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