22.3. ユースケース: Pod での ConfigMap の使用
以下のセクションでは、Pod で ConfigMap
オブジェクトを使用する際のいくつかのユースケースについて説明します。
22.3.1. 環境変数での使用
ConfigMaps
は個別の環境変数を設定するために使用したり、有効な環境変数名を生成するすべてのキーで環境変数を設定したりできます。例として、以下の ConfigMaps
について見てみましょう。
2 つの環境変数を含む ConfigMap
apiVersion: v1 kind: ConfigMap metadata: name: special-config 1 namespace: default data: special.how: very 2 special.type: charm 3
1 つの環境変数を含む ConfigMap
apiVersion: v1 kind: ConfigMap metadata: name: env-config 1 namespace: default data: log_level: INFO 2
configMapKeyRef
セクションを使用して、Pod の ConfigMap
のキーを使用できます。
特定の環境変数を挿入するように設定されている Pod 仕様のサンプル
apiVersion: v1 kind: Pod metadata: name: dapi-test-pod spec: containers: - name: test-container image: gcr.io/google_containers/busybox command: [ "/bin/sh", "-c", "env" ] env: 1 - name: SPECIAL_LEVEL_KEY valueFrom: configMapKeyRef: name: special-config 2 key: special.how 3 - name: SPECIAL_TYPE_KEY valueFrom: configMapKeyRef: name: special-config 4 key: special.type 5 optional: true 6 envFrom: 7 - configMapRef: name: env-config 8 restartPolicy: Never
この Pod が実行されると、その出力には以下の行が含まれます。
SPECIAL_LEVEL_KEY=very log_level=INFO