Как принудительно перезапустить модуль при изменении переменной среды контейнера - PullRequest
0 голосов
/ 14 июня 2019

Я пытаюсь развернуть образ, в котором есть некоторые переменные среды, но когда я это делаю, я получаю ошибку ниже

Недопустимый модуль "envar-demo": spec: Запрещено: обновления модуля не могут изменить поля, отличные от spec.containers[*].image, spec.initContainers[*].image, spec.activeDeadlineSeconds или spec.tolerations (только дополнения к существующим допускам) { "Тома": [{ "Имя": "по умолчанию-токен-9dgzr", "HostPath": нулевой, "EmptyDir": нулевой, "GCEPersistentDisk": нулевой, "AWSElasticBlockStore": нулевой, "GitRepo": нулевой,» Секрет ": {" SecretName ":" по умолчанию-токен-9dgzr», "Элементы": NULL, "DefaultMode": 420, "Дополнительно": NULL}, "NFS": нулевой, "ISCSI": нулевая "GlusterFS" : нулевой, "PersistentVolumeClaim": нулевой, "РосБР": нулевой, "Quobyte": нулевой, "FlexVolume": нулевой, "зола": NULL, "CephFS": нулевой, "Flocker": нулевой, "DownwardAPI": нулевая "FC": нулевой, "AzureFile": нулевой, "ConfigMap": нулевой, "VsphereVolume": нулевой, "AzureDisk": нулевой, "PhotonPersistentDisk": нулевой, "Прогнозируемый": нулевой, "PortworxVolume": нулевой,» ScaleIO ": нулевой," StorageOS ": нулевой}]," InitContainers ": нулевая," Контейнеры ": [{" Имя ":" envar-демо-контейнер " "Image":" gcr.io/google-samples/ узел-привет: 1,0" , "Команда": нулевой, "Args": нулевой, "WorkingDir": "", "Порты": нулевая, "EnvFrom": нулевая, "Env": [{ "Имя": "DEMO_GREETING «„Значение“:» Здравствуйте, из окружающей среды

мой ямл.

apiVersion: v1
kind: Pod
metadata:
  name: envar-demo
  labels:
    purpose: demonstrate-envars-new
spec:
  containers:
  - name: envar-demo-container
    image: gcr.io/google-samples/node-hello:1.0
    env:
    - name: DEMO_GREETING
      value: "Hello from the environment-change value"
    - name: DEMO_FAREWELL
      value: "Such a sweet sorrow"

почему я не могу развернуть, когда меняются переменные среды моего контейнера.

мой модуль работает, но все равно мне нужно изменить переменную среды и перезапустить мой модуль.

1 Ответ

4 голосов
/ 14 июня 2019

На самом деле, вам лучше использовать развертывания для этого варианта использования.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: node-hello
  labels:
    app: node-hello
spec:
  replicas: 3
  selector:
    matchLabels:
      app: node-hello
  template:
    metadata:
      labels:
        app: node-hello
    spec:
      containers:
      - name: node-hello
        image: gcr.io/google-samples/node-hello:1.0
        ports:
        - containerPort: 80
        env:
        - name: DEMO_GREETING
          value: "Hello from the environment-change value"
        - name: DEMO_FAREWELL
          value: "Such a sweet sorrow"

таким образом вы сможете изменить переменные окружения, и модуль будет перезапущен с новыми переменными окружения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...