環境変数を使用したシークレットおよび構成マップの参照 (CLI)
Code Engine では、シークレットとコンフィグマップを作成した後、キーと値のペアとして格納された情報は、シークレットやコンフィグマップを完全に参照するか、個々のキーを参照することで、環境変数としてアプリ、ジョブ、または関数のワークロードで消費できます。
シークレットを環境変数として処理することは、構成マップを環境変数として処理することと類似しています。 シークレットを処理する場合は、データがエンコードされます。
configmapsまたはsecretを参照する環境変数を持つアプリ、ジョブ、または関数を更新するときは、以下の情報を考慮してください。
configmap(またはsecret)を完全参照する環境変数を持つアプリ、ジョブ、または関数を、別のconfigmap(またはsecret)を完全参照するように更新すると、完全参照は、設定された順番で他の完全参照を上書きします(最後に参照されたセットは、最初に設定されたセットを上書きします)。
あるコンフィグマップ(またはシークレット)のキーを参照する環境変数を持つアプリ、ジョブ、または関数を、別のコンフィグマップ(またはシークレット)の同じキーを参照するように更新すると、最後に参照されたキーが使用されます。
コンフィグマップ(またはシークレット)を完全に参照する環境変数を持つアプリ、ジョブ、または関数を更新して、特定のキーへの参照を追加すると、特定のキーへの参照がコンフィグマップ(またはシークレット)の完全な参照より優先されます。
CLI を使用した構成マップまたはシークレットの参照に関する基本的な情報については、CLI を使用した構成マップの参照およびCLI を使用したシークレットの参照を参照してください。
シークレットまたは構成マップを処理するいくつかのシナリオを以下に示します。
CLI でのシークレット全体の参照
シークレットと構成マップは、キーと値のペアで構成されます。 環境変数は、完全なシークレットまたは構成マップを参照するときに、キーごとにエントリーを指定した結果です。 複数のシークレット (または構成マップ) に同じ名前付きキーが含まれている場合は、参照されているシークレットまたは構成マップ内のいずれか 1 つのキーのみを取得します。
このシナリオでは、ユーザー名およびパスワードを表すキーと値のペアが含まれるシークレットを作成してから、ジョブの実行時にそのシークレット全体を参照します。 シークレットの更新によってキーを追加し、その新規キーをジョブで使用する方法を示します。 このシナリオではシークレットを使用しますが、コマンドに含まれる configmap を secret に置き換えることによって、同じ手順で構成マップ全体を参照できます。
-
mydatabasesecシークレットを作成し、--from-literalオプションを使用して、ユーザー名およびパスワードを表すキーと値のペアを指定します。ibmcloud ce secret create -n mydatabasesec --from-literal username=reader --from-literal password=abcd -
mydatabasesecコマンドを使用して、secret getシークレットの詳細を表示します。 シークレットのpasswordキーとusernameキーの値はエンコードされます。ibmcloud ce secret get -n mydatabasesec出力例
Getting generic secret 'mydatabasesec'... OK Name: mydatabasesec ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 17s Created: 2020-10-14 14:07:59 -0400 EDT Data: --- password: YWJjZA== username: cmVhZGVy -
mydatabasesecシークレット全体を参照するためにジョブに環境変数を設定します。 この例では、--env-from-secret PREFIX=NAMEオプションを使用します。ここで、PREFIX=NAMEは、各キーの接頭部がPREFIXになっている構成マップ全体を参照することを指定します。read_接頭部を使用すると、各キーの接頭部としてread_が付きます。busyboxイメージは、デフォルトでは出力を何も表示しないため、-c envオプションでコンテナー内のすべての環境変数を表示するよう指定します。ibmcloud ce job create -n demo -i busybox -c env --env-from-secret read_=mydatabasesecジョブまたはアプリ内のすべての環境変数が固有であることを確認するために、接頭部を使用することを検討してください。 例えば、キー
a、b、およびcを持つ秘密がある場合、これらの環境変数はa、b、およびcとして表示されます。 ただし、read_などの接頭部を追加すると、read_a、read_b、およびread_cなどの接頭部とともにキーが表示されます。 接頭部を使用すると、参照元のアプリ、ジョブ、またはジョブ実行内の環境変数もグループ化され、構成マップまたはシークレット内のキーの重複を回避するのに役立ちます。 -
(オプション)
demoジョブの詳細を表示します。 出力で、mydatabasesecシークレット全体の参照が表示されます。ibmcloud ce job get -n demo出力例
Getting job 'demo'... OK Name: demo ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 6s Created: 2022-05-04T15:04:16-04:00 Commands: env Environment Variables: Type Name Value Secret full reference read_=mydatabasesec Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3 -
demoジョブの構成を使用するジョブを実行します。ibmcloud ce jobrun submit --name demo1 --job demo -
ジョブ実行のログを表示します。 ジョブ実行のすべてのインスタンスのログを表示したり、ジョブ実行の特定のインスタンスのログを表示したりできます。 この例では、
demo1ジョブ実行のログを表示します。 ログ出力には、完全なシークレットmydatabasesecのキーが接頭部read_付きで表示されていることに注意してください。 シークレットの値は、デコードされて環境に追加されます。ibmcloud ce jobrun logs --jobrun demo1出力例
Getting logs for all instances of job run 'demo1'... Getting jobrun 'demo1'... Getting instances of jobrun 'demo1'... [...] HOSTNAME=demo1-0-0 read_username=reader read_password=abcd JOB_INDEX=0 CE_SUBDOMAIN=8aaon2dfwa0 CE_JOBRUN=demo1 [...] -
mydatabasesecオプションを使用して、キーを追加するために--from-fileシークレットを更新します。 このオプションでは、--from-file FILEまたは--from-file KEY=FILEというフォーマットを使用します。 以下のコマンドでは、certificateがキーで、cert.pemがファイルの名前です。ibmcloud ce secret update -n mydatabasesec --from-file certificate=cert.pem -
mydatabasesecコマンドを使用して、更新されたsecret getシークレットの詳細を表示します。 シークレットには、3 つのキーcertificate、password、およびusernameが含まれるようになっています。 シークレットの値はエンコードされます。ibmcloud ce secret get -n mydatabasesec出力例
Getting generic secret 'mydatabasesec'... OK Name: mydatabasesec ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 4m13s Created: 2020-10-14 13:35:43 -0400 EDT Data: --- certificate: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tLS0tDQphc2RmO2Frc2pkZmxrYWpzZGZsa2phc2xka2ZqYWxza2RqZmxha3NqZGZsaw0KLS0tLS1FTkQgQ0VSVEZJQ0lBVEUtLS0tLS0tLS0t password: YWJjZA== username: cmVhZGVy -
demoジョブを使用するジョブを実行します。 先ほどは、mydatabasesecジョブからdemoシークレット全体を参照しました。certificateのキーと値のペアが追加されている、更新されたシークレットをジョブで使用するには、新しいジョブを実行依頼します。 更新されたシークレットを使用するようにアプリを更新するには、アプリを再始動します。ibmcloud ce jobrun submit --name demo2 --job demo -
ibmcloud ce jobrun logsコマンドを使用して、ジョブ実行のログを表示します。 ジョブ実行のすべてのインスタンスのログを表示したり、ジョブ実行の特定のインスタンスのログを表示したりできます。 ジョブ実行の特定のインスタンスのログを表示するには、jobrun logsコマンドで--instanceオプションを使用します。 必要に応じて、jobrun get --name demo2コマンドを使用して、ジョブ実行のインスタンスを含む、このジョブ実行の詳細を表示します。 この例では、実行中インスタンスdemo2-0-0のログを表示します。ここで、demo2はジョブ実行の名前で、0はarrayindexで、0はretryindexです。certificateシークレット全体のusernameキー、passwordキー、およびmydatabasesecキーが出力に表示されていることに注目してください。 シークレットの値は、デコードされて環境に追加されます。
ibmcloud ce jobrun logs --instance demo2-0-0
出力例
Getting logs for job run instance 'demo2-0-0'...
[...]
read_certificate=-----BEGIN CERTIFICATE--------
asdf;aksjdflkajsdflkjasldkfjalskdjflaksjdflk
-----END CERTFICIATE----------
read_password=abcd
read_username=reader
CLI での構成マップにおける個々のキーの参照
このシナリオでは、キーと値のペアが複数含まれる構成マップを作成してから、ジョブで特定のキーを参照します。 このシナリオでは構成マップを使用しますが、コマンドに含まれる secret を configmap に置き換えることによって、同じ汎用手順を使用してシークレットでも個々のキーを参照できます。
-
mydatabase構成マップを作成し、--from-literal KEY=VALUEオプションを使用して、名前および URL を表すキーと値のペアを指定します。ibmcloud ce configmap create -n mydatabasecm --from-literal name=myname --from-literal url=myurl -
mydatabasecmコマンドを使用して、configmap get構成マップの詳細を表示します。ibmcloud ce configmap get -n mydatabasecm出力例
Getting configmap 'mydatabasecm'... OK Name: mydatabasecm ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 16s Created: 2020-10-14 13:31:19 -0400 EDT Data: --- name: myname url: myurl -
url構成マップ内のmydatabasecmキーを参照するためにジョブに環境変数を設定します。--env-from-configmap NAME:KEY_A,KEY_Bオプションを使用します。ここで、NAME:KEY_Aは、構成マップのKEY_Aを参照するよう指定します。ibmcloud ce job create --name keydemo --image busybox --command env --env-from-configmap mydatabasecm:url -
keydemoジョブを使用するジョブを実行します。ibmcloud ce jobrun submit --name keydemo1 --job keydemo -
ibmcloud ce jobrun logsコマンドを使用して、ジョブ実行のログを表示します。 ジョブ実行のすべてのインスタンスのログを表示したり、ジョブ実行の特定のインスタンスのログを表示したりできます。 ジョブ実行の特定のインスタンスのログを表示するには、jobrun logsコマンドで--instanceオプションを使用します。 必要に応じて、jobrun get --name keydemo1コマンドを使用して、ジョブ実行のインスタンスを含む、このジョブ実行の詳細を表示します。 出力で、urlキーのみが参照されており、nameキーがジョブで参照されていないことに注目してください。ibmcloud ce jobrun logs --instance keydemo1-0-0出力例
Getting logs for job run instance 'keydemo1-0-0'... [...] url=myurl [...]
CLI での参照データのオーバーライド
参照されるシークレットおよび構成マップをオーバーライドできます。 シークレットまたは構成マップを処理するいくつかのシナリオを以下に示します。
シナリオ A 完全に参照されるシークレットを、完全に参照される別のシークレットでオーバーライドする
このシナリオでは、mydatabasesec-writer キーと username キーを含む新しい password シークレットを作成し、先に作成した username シークレット内の password キーと mydatabasesec キーをオーバーライドします。 mydatabasesec シークレットには username=reader キーと password=abcd キーが含まれます。
参照先全体は設定された順に他の参照先全体をオーバーライドします (後に設定された参照先が、先に設定された参照先をオーバーライドします)。
-
先に作成された
writerjobシークレット全体を参照するためにmydatabasesecジョブに環境変数を設定します。mydatabasesecシークレットにはusername=readerキーとpassword=abcdキーが含まれます。ibmcloud ce job create -n writerjob -i busybox -c env --env-from-secret mydatabasesec -
(オプション)
writerjobジョブの詳細を表示します。 出力で、mydatabasesecシークレット全体の参照が表示されます。ibmcloud ce job get -n writerjob出力例
Getting job 'writerjob'... OK Name: writerjob ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 17s Created: 2021-02-12T07:12:08-06:00 [...] Commands: env Environment Variables: Type Name Value Secret full reference mydatabasesec Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3 -
writerjobジョブを使用するジョブを実行します。ibmcloud ce jobrun submit --name writerjob1 --job writerjob -
ジョブ実行のログを表示します。 ジョブ実行のすべてのインスタンスのログを表示したり、ジョブ実行の特定のインスタンスのログを表示したりできます。 この例では、
writerjob1ジョブ実行のログを表示します。usernameシークレット全体のpasswordキーとmydatabasesecキーが出力に表示されていることに注目してください。 シークレットの値は、デコードされて環境に追加されます。ibmcloud ce jobrun logs --jobrun writerjob1出力例
Getting jobrun 'writerjob1'... Getting instances of jobrun 'writerjob1'... Getting logs for all instances of job run 'writerjob1'... OK [...] certificate=-----BEGIN CERTIFICATE-------- asdf;aksjdflkajsdflkjasldkfjalskdjflaksjdflk -----END CERTFICIATE---------- password=abcd username=reader [...] -
mydatabasesec-writerシークレットを作成し、--from-literalオプションを使用して、ユーザー名およびパスワードを表すキーと値のペアを指定します。ibmcloud ce secret create --name mydatabasesec-writer --from-literal username=writer --from-literal password=wxyz -
mydatabasesec-writerコマンドを使用して、secret getシークレットの詳細を表示します。 シークレットのpasswordキーとusernameキーの値はエンコードされます。ibmcloud ce secret get -n mydatabasesec-writer出力例
Getting generic secret 'mydatabasesec-writer'... OK Name: mydatabasesec-writer ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 14s Created: 2020-10-14 13:44:16 -0400 EDT Data: --- password: d3h5eg== username: d3JpdGVy -
mydatabasesec-writerシークレット全体を参照するようにwriterjobジョブを更新し、write_接頭部を使用します。ibmcloud ce job update --name writerjob --env-from-secret write_=mydatabasesec-writer -
(オプション) 更新された
writerjobジョブの詳細を表示します。 このジョブでは、mydatabasesecシークレット全体とmydatabase-writerシークレット全体を参照します。ibmcloud ce job get -n writerjob出力例
Getting job 'writerjob'... OK Name: writerjob ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 4m2s Created: 2021-02-12T07:12:08-06:00 [...] Commands: env Environment Variables: Type Name Value Secret full reference mydatabasesec Secret full reference write_=mydatabasesec-writer Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3 -
writerjobジョブを使用するジョブを実行します。writerjobシークレットとmydatabasesecシークレットの両方を参照するようにmydatabasesec-writerジョブが更新され、それらのシークレットの両方にusernameとpasswordのキーが含まれるため、最後に参照されるmydatabasesec-writerシークレット全体によってmydatabasesecシークレットがオーバーライドされます。全体が参照されるシークレットの更新を含むジョブの更新済み構成をジョブ実行で使用するために、新規ジョブを実行します。 更新されたシークレットを使用するようにアプリを更新するには、アプリを再始動します。
ibmcloud ce jobrun submit --name writerjob2 --job writerjob -
ibmcloud ce jobrun logsコマンドを使用して、ジョブ実行のログを表示します。 ジョブ実行のすべてのインスタンスのログを表示したり、ジョブ実行の特定のインスタンスのログを表示したりできます。 ジョブのすべてのインスタンスのログを表示するには、jobrun logsコマンドで--jobrunオプションを使用します。 ジョブ実行の特定のインスタンスのログを表示するには、jobrun logsコマンドで--instanceオプションを使用します。 必要に応じて、jobrun get --name writerjob2コマンドを使用して、ジョブ実行のインスタンスを含め、このジョブ実行の詳細を表示します。 出力で、usernameシークレットのpasswordキーとmydatabasesec-writerキーによって、mydatabasesecシークレットのキーがオーバーライドされていることに注目してください。 また、ログ出力には、完全なシークレットmydatabasesec-writerのキーが接頭部write_とともに表示されます。シークレットの値は、デコードされた環境に追加されます。
ibmcloud ce jobrun logs --instance writerjob2-0-0
出力例
Getting logs for job run instance 'writerjob2-0-0'...
[...]
certificate=-----BEGIN CERTIFICATE--------
asdf;aksjdflkajsdflkjasldkfjalskdjflaksjdflk
-----END CERTFICIATE----------
password=abcd
username=reader
write_password=wxyz
write_username=writer
[...]
シナリオ B 完全に参照されているシークレットをキー参照でオーバーライドする
シークレットまたは構成マップ内のキーが参照されるとき、全体が参照されるシークレットまたは構成マップ内にその使用キーがある場合、順序に関係なく常に、そのキーの参照によってシークレット全体または構成マップ全体の参照がオーバーライドされます。
このシナリオでは、既に作成済みのシークレット mydatabasesec および mydatabasesec-writer を使用し、それらのシークレット内のキーをジョブで参照します。
-
writerpicシークレットおよびmydatabasesecシークレットに含まれる特定のキーを参照するために、mydatabasesec-writerジョブに環境変数を設定します。mydatabasesecシークレットにはusername=readerキー、password=abcdキー、およびcertificate=cert.pemキーが含まれます。mydatabasesec-writerシークレットにはusername=writerキーとpassword=wxyzキーが含まれます。ibmcloud ce job create -n writerpick -i busybox -c env --env-from-secret mydatabasesec-writer:username --env-from-secret mydatabasesec-writer:password --env-from-secret mydatabasesec -
(オプション)
writerpickジョブの詳細を表示します。 出力に、mydatabasesecシークレット全体の参照と、passwordシークレットのusernameキーおよびmydatabasesec-writerキーのキー参照が表示されます。ibmcloud ce job get -n writerpick出力例
Getting job 'writerpick'... OK Name: writerpick ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 107s Created: 2021-02-12T07:16:46-06:00 [...] Commands: env Environment Variables: Type Name Value Secret full reference mydatabasesec Secret key reference password mydatabasesec-writer.password Secret key reference username mydatabasesec-writer.username Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3 -
writerpickジョブを使用するジョブを実行します。ibmcloud ce jobrun submit --name writerpick1 --job writerpick -
ibmcloud ce jobrun logsコマンドを使用して、writerpick1ジョブ実行のログを表示します。 ジョブ実行のすべてのインスタンスのログを表示したり、ジョブ実行の特定のインスタンスのログを表示したりできます。 ジョブ実行の特定のインスタンスのログを表示するには、jobrun logsコマンドで--instanceオプションを使用します。 必要に応じて、jobrun get --name writerpick1コマンドを使用して、ジョブ実行のインスタンスを含む、このジョブ実行の詳細を表示します。writerpickジョブが更新されて、mydatabasesec-writerシークレット内の特定のキーを参照し、mydatabasesecシークレット全体を参照するようになったため、usernameシークレット内のpasswordキーおよびmydatabasesec-writerキーの参照によってシークレット全体の参照がオーバーライドされます。 シークレットの値は、デコードされて環境に追加されます。ibmcloud ce jobrun logs --instance writerpick1-0-0出力例
Getting logs for job run instance 'writerpick1-0-0'... [...] username=writer certificate=-----BEGIN CERTIFICATE-------- asdf;aksjdflkajsdflkjasldkfjalskdjflaksjdflk -----END CERTFICIATE---------- password=wxyz [...]
シナリオ C 新規キーによるキー参照のオーバーライド
シークレットまたは構成マップにある特定のキーの参照を更新し、その値を新規値でオーバーライドすることができます。
このシナリオでは、mydatabasecm キーが含まれる、前に作成した url:myurl 構成マップを使用して、そのキーの値を更新します。
-
keyref構成マップに含まれる特定のキーを参照するために、mydatabasecmジョブに環境変数を設定します。ibmcloud ce job create -n keyref -i busybox -c env --env-from-configmap mydatabasecm:url -
(オプション)
keyrefジョブの詳細を表示します。url構成マップ内のmydatabasecmキーのキー参照が出力に表示されます。ibmcloud ce job get -n keyref出力例
Getting job 'keyref'... OK Name: keyref ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 65s Created: 2021-02-12T07:18:44-06:00 [...] Commands: env Environment Variables: Type Name Value ConfigMap key reference url mydatabasecm.url Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3 -
keyrefジョブを使用するジョブを実行します。ibmcloud ce jobrun submit --name keyref1 --job keyref -
ibmcloud ce jobrun logsコマンドを使用して、keyref1ジョブ実行の実行中インスタンスのログを表示します。 ジョブ実行のすべてのインスタンスのログを表示したり、ジョブ実行の特定のインスタンスのログを表示したりできます。 ジョブ実行の特定のインスタンスのログを表示するには、jobrun logsコマンドで--instanceオプションを使用します。 必要に応じて、jobrun get --name keyref1コマンドを使用して、ジョブ実行のインスタンスを含む、このジョブ実行の詳細を表示します。 ジョブ実行でurl=myurlキー参照が使用されました。ibmcloud ce jobrun logs --instance keyref1-0-0出力例
Getting logs for job run instance 'keyref1-0-0'... [...] url=myurl [...] -
keyrefが新規キーでオーバーライドされるように、url=myurlジョブを更新します。--envオプションを使用して、urlキーを更新します。job updateコマンドの--envオプションは、ジョブの環境変数をNAME=VALUE形式で設定します。ibmcloud ce job update --name keyref --env url=newurl -
(オプション)
keyrefジョブの詳細を表示します。url構成マップ内のmydatabasecmキーのキー参照が出力に表示されます。ibmcloud ce job get -n keyref出力例
Getting job 'keyref'... OK Name: keyref ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 3m6s Created: 2021-02-12T07:18:44-06:00 Commands: env Environment Variables: Type Name Value Literal url newurl Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3
CLI を使用した全体が参照されるシークレットまたは構成マップの削除
全体が参照されるシークレットまたは構成を、ジョブまたはアプリから削除できます。
このシナリオでは、全体が参照される mydatabasesec シークレットを demo ジョブから削除します。
-
demoシークレットの参照が削除されるように、mydatabasesecジョブを更新します。ibmcloud ce job update -n demo --env-from-secret-rm mydatabasesec -
demoジョブの詳細を表示します。mydatabasesecシークレットの参照が削除されたことが出力に示されます。ibmcloud ce job get -n demo出力例
Getting job 'demo'... OK Name: demo ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 19m Created: 2021-02-12T07:05:23-06:00 [...] Commands: env Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3
CLI でのキー参照の削除
シークレットまたは構成マップ内の、参照されるキーをジョブまたはアプリから削除できます。
このシナリオでは、url キーを keyref ジョブから削除します。
--env-from-configmap 構成マップ内の url キーを参照するために mydatabasecm オプションがジョブで使用されましたが、個々のキーを削除するために --env-rm オプションを使用できます。 job updateコマンドまたは
app updateコマンドで--env-rmオプションを使用すると、鍵がシークレットまたは構成マップ内の個々の鍵参照であるかどうか、または鍵が--envオプションを使用してジョブまたはアプリケーションに直接設定されているかどうかに関係なく、鍵参照を削除できます。
-
keydefキーの参照が削除されるように、urlジョブを更新します。ibmcloud ce job update --name keyref --env-rm url -
keyrefジョブの詳細を表示します。urlキーの参照が削除されたことが出力に示されます。ibmcloud ce job get -n keyref出力例
Getting job 'keyref'... OK Name: keyref ID: abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Project Name: myproject Project ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Age: 6m27s Created: 2021-02-12T07:18:44-06:00 [...] Commands: env Image: busybox Resource Allocation: CPU: 1 Memory: 4G Runtime: Mode: task Array Indices: 0 Array Size: 1 Max Execution Time: 7200 Retry Limit: 3