22.3. Downward API を使用したコンテナー値の使用
22.3.1. 環境変数の使用
Downward API を使用するための 1 つのメカニズムとして、コンテナーの環境変数を使用することができます。EnvVar
タイプの valueFrom
フィールド (タイプは EnvVarSource
) は、変数の値が value
フィールドで指定されるリテラル値ではなく、FieldRef
ソースからの値になるように指定するために使用されます。今後は追加のソースがサポートされる可能性があります。 現時点では、ソースの fieldRef
フィールドは Downward API からフィールドを選択するために使用されます。
この方法で使用できるのは Pod の定数属性のみです。環境変数を使用してサポートされるフィールドには、以下が含まれます。
- Pod の名前
Pod の namespace
pod.yaml
ファイルを作成します。apiVersion: v1 kind: Pod metadata: name: dapi-env-test-pod spec: containers: - name: env-test-container image: gcr.io/google_containers/busybox command: [ "/bin/sh", "-c", "env" ] env: - name: MY_POD_NAME valueFrom: fieldRef: fieldPath: metadata.name - name: MY_POD_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace restartPolicy: Never
pod.yaml
ファイルから Pod を作成します。$ oc create -f pod.yaml
コンテナーのログで
MY_POD_NAME
およびMY_POD_NAMESPACE
の値を確認します。$ oc logs -p dapi-env-test-pod