2.10.3.2. ファイルから設定マップを作成する
--from-file フラグを使用すると、ファイルから config map を作成できます。--from-file オプションを CLI に複数回渡すことができます。
key=value 式を --from-file オプションに渡すことで、ファイルからインポートされたコンテンツの config map に設定するキーを指定することもできます。以下に例を示します。
$ oc create configmap game-config-3 --from-file=game-special-key=example-files/game.properties
ファイルから設定マップを作成する場合、UTF8 以外のデータを破損することなく、UTF8 以外のデータを含むファイルをこの新規フィールドに配置できます。OpenShift Container Platform はバイナリーファイルを検出し、ファイルを MIME として透過的にエンコーディングします。サーバーでは、データを破損することなく MIME ペイロードがデコーディングされ、保存されます。
前提条件
config map に追加するデータを含むファイルを含むディレクトリーが必要です。
次の手順では、サンプルファイル
game.propertiesおよびui.propertiesを使用します。$ cat example-files/game.properties出力例
enemies=aliens lives=3 enemies.cheat=true enemies.cheat.level=noGoodRotten secret.code.passphrase=UUDDLRLRBABAS secret.code.allowed=true secret.code.lives=30$ cat example-files/ui.properties出力例
color.good=purple color.bad=yellow allow.textmode=true how.nice.to.look=fairlyNice
手順
特定のファイルを指定して設定マップを作成します。
$ oc create configmap game-config-2 \ --from-file=example-files/game.properties \ --from-file=example-files/ui.propertiesキーと値のペアを指定して、設定マップを作成します。
$ oc create configmap game-config-3 \ --from-file=game-special-key=example-files/game.properties
検証
-oオプションを使用してオブジェクトのoc getコマンドを入力し、ファイルからキーの値を表示します。$ oc get configmaps game-config-2 -o yaml出力例
apiVersion: v1 data: game.properties: |- enemies=aliens lives=3 enemies.cheat=true enemies.cheat.level=noGoodRotten secret.code.passphrase=UUDDLRLRBABAS secret.code.allowed=true secret.code.lives=30 ui.properties: | color.good=purple color.bad=yellow allow.textmode=true how.nice.to.look=fairlyNice kind: ConfigMap metadata: creationTimestamp: 2016-02-18T18:52:05Z name: game-config-2 namespace: default resourceVersion: "516" selflink: /api/v1/namespaces/default/configmaps/game-config-2 uid: b4952dc3-d670-11e5-8cd0-68f728db1985-oオプションを使用してオブジェクトのoc getコマンドを入力し、key-value (キー/値) ペアからキーの値を表示します。$ oc get configmaps game-config-3 -o yaml出力例
apiVersion: v1 data: game-special-key: |-1 enemies=aliens lives=3 enemies.cheat=true enemies.cheat.level=noGoodRotten secret.code.passphrase=UUDDLRLRBABAS secret.code.allowed=true secret.code.lives=30 kind: ConfigMap metadata: creationTimestamp: 2016-02-18T18:54:22Z name: game-config-3 namespace: default resourceVersion: "530" selflink: /api/v1/namespaces/default/configmaps/game-config-3 uid: 05f8da22-d671-11e5-8cd0-68f728db1985- 1
- これは、先の手順で設定したキーです。