Adding arrays as Kubernetes environment variables Adding arrays as Kubernetes environment variables kubernetes kubernetes

Adding arrays as Kubernetes environment variables


You can inject your entire application.conf with a mechanism of ConfigMaps:

apiVersion: v1kind: ConfigMapmetatada:  name: app-configdata:  application.conf: |    play.cache.redis {      # enable cluster mode      source: cluster      # nodes are defined as a sequence of objects:      cluster:  [        {          # required string, defining a host the node is running on          host:        localhost          # required integer, defining a port the node is running on          port:        6379          # optional string, defines a password to use          password:    null        }      ]    }

and then mount it directly to your container:

apiVersion: v1kind: Podmetadata:  name: ....spec:  containers:    - name: ...      image: ...      volumeMounts:      - name: config-volume        mountPath: /etc/config  volumes:    - name: config-volume      configMap:        name: app-config

The app can access it then at /etc/config/application.conf.


You can define any env variable into a pod. For this, you need to update your spec section in deployment:

Here is an example:

spec:  containers:  - name: container-name    image: gcr.io/google-samples/node-hello:1.0    env:    - name: VAR_NAME      value: "any var value"    - name: VAR_NAME2      value: "another value"