首页 > 解决方案 > k8s 配置中的条件容器声明

问题描述

我正在使用 kubernetes 的 v1beta2 并且我有Deployment某种配置。在此配置中,我有一个应用程序的基本配置,并且我想有条件地在同一个 pod 中添加第二个 docker 映像(容器)。

我的配置文件:

apiVersion: apps/v1beta2
kind: Deployment
metadata:
  name: ${MY_APP_NAME}
spec:
   containers:
    - name: my_first_container
      image: image_url
[...]
    - name: my_second_container <------ I want to put conditional declaration of this container
[...]

我不想在单独的吊舱中添加第二个容器。

该条件基于一个变量,如 ${K8S_CONTAINER2_CONDITION},由 linux 中的 sed 命令赋值。此命令替换 ${MY_APP_NAME} 等变量。

我怎样才能把这个容器的条件声明?对于某些应用程序,我需要同时部署两个容器,而对于其他应用程序,只需要部署第一个。但是我只有一个 k8s 配置文件(yaml)。

标签: kubernetes

解决方案


您应该查看 helm 图表以在部署时自定义部署文件


推荐阅读