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"