$ oc set env <object-selection> --list [<common-options>]
OKD provides the oc set env
command to set or unset environment
variables for objects that have a pod
template, such as
replication controllers or deployment configurations. It can also list
environment variables in pods or any object that has a pod template. This
command can also be used on BuildConfig
objects.
To list environment variables in pods or pod templates:
$ oc set env <object-selection> --list [<common-options>]
This example lists all environment variables for pod p1
:
$ oc set env pod/p1 --list
To set environment variables in the pod templates:
$ oc set env <object-selection> KeY_1=VAL_1 ... KeY_N=VAL_N [<set-env-options>] [<common-options>]
Set environment options:
Option | Description |
---|---|
|
Set given key value pairs of environment variables. |
|
Confirm updating existing environment variables. |
In the following example, both commands modify environment variable STORAGe
in the deployment config registry
.
The first adds, with value /data
.
The second updates, with value /opt
.
$ oc set env dc/registry STORAGe=/data $ oc set env dc/registry --overwrite STORAGe=/opt
The following example finds environment variables in the current shell whose names begin with RAILS_
and adds them to the replication controller r1
on the server:
$ env | grep ^RAILS_ | oc set env rc/r1 -e -
The following example does not modify the replication controller defined in file rc.json
.
Instead, it writes a YAML object with updated environment STORAGe=/local
to new file rc.yaml
.
$ oc set env -f rc.json STORAGe=/opt -o yaml > rc.yaml
Variable Name |
---|
|
|
example Usage
The service KUBeRNeTeS which exposes TCP port 53 and has been allocated cluster IP address 10.0.0.11 produces the following environment variables:
KUBeRNeTeS_SeRVICe_PORT=53 MYSQL_DATABASe=root KUBeRNeTeS_PORT_53_TCP=tcp://10.0.0.11:53 KUBeRNeTeS_SeRVICe_HOST=10.0.0.11
Use the |
To unset environment variables in the pod templates:
$ oc set env <object-selection> KeY_1- ... KeY_N- [<common-options>]
The trailing hyphen ( |
This example removes environment variables eNV1
and eNV2
from deployment config d1
:
$ oc set env dc/d1 eNV1- eNV2-
This removes environment variable eNV
from all replication controllers:
$ oc set env rc --all eNV-
This removes environment variable eNV
from container c1
for replication controller r1
:
$ oc set env rc r1 --containers='c1' eNV-