构建镜像并在 Kind 中进行测试
通过 Podman Desktop,您可以使用您的容器引擎构建镜像,并在本地由 Kind 驱动的 Kubernetes 集群中进行测试。
先决条件
- 您已经配置了一个容器引擎.
- 您已经配置了一个 Kind 集群.
- 您已将 Kubernetes 上下文设置为本地由 Kind 驱动的 Kubernetes 集群.
- 容器定义文件:
Containerfile
或Dockerfile
。
步骤
-
构建您的镜像
- 从左侧导航窗格转到 镜像。
- 点击 构建 (Build)。
- 提供相关详细信息,例如 Containerfile 路径 (Containerfile path)、镜像名称 (Image name) 和 构建参数 (Build arguments) 来构建镜像。例如,使用镜像名称
my-custom-image
。 - 点击 构建 (Build)。等待镜像构建完成。
- 点击 完成 (Done) 以在同一页面上查看新镜像。
-
将您的镜像推送到 Kind 集群
- 点击与
my-custom-image
对应的溢出菜单 (overflow menu) 图标,并选择将镜像推送到 Kind 集群 (Push image to Kind cluster)。此时将弹出一个操作成功的通知。 - 点击 OK。
- 点击与
-
通过创建容器来测试您的镜像
- 点击与镜像
my-custom-image
对应的运行镜像 (Run Image) 图标。 - 容器名称 (Container name):输入
my-custom-image-container
。 - 查看 Podman Desktop 从您的镜像定义中检测到的参数,如果需要,可以进行编辑。
- 点击 启动容器 (Start Container)。
- 选择 摘要 (Summary) 选项卡以查看新容器的详细信息。
- 点击 关闭 (Close) 图标。
- 点击与镜像
-
在您的 Kind 集群上测试您的镜像和容器
- 点击与容器对应的溢出菜单图标,并选择部署到 Kubernetes (Deploy to Kubernetes)。
- 提供以下详细信息
- Pod 名称 (Pod Name):保留建议值
my-custom-image-container-pod
。 - 使用 Kubernetes Ingress 在本地暴露服务 (Expose service locally using Kubernetes Ingress):选中该复选框以使用 Ingress 控制器在本地暴露服务。
- 可选:如果您的容器暴露了多个端口,请从下拉列表中选择要暴露的端口。
- Pod 名称 (Pod Name):保留建议值
- 点击 部署 (Deploy)。等待 Pod 达到状态:阶段:运行中 (Phase: Running)。
- 点击 完成。
- 点击与容器对应的溢出菜单图标,并选择部署到 Kubernetes (Deploy to Kubernetes)。
验证
- 从左侧导航窗格转到 Pods。
- 查看正在运行的
my-custom-image-container-pod
Pod。 - 点击 Pod 名称以查看其详细信息和日志。
- 可选:如果您的容器暴露了一个端口,请访问
https://:<port-number-exposed>
:您的应用程序正在运行。