4.2.2.3. シークレットの指定
OpenShift シークレットを使用して、設定情報を安全に含めることができます。--config secret
構文を使用して、Camel K インテグレーションが利用できるようシークレットをマテリアル化することができます。
前提条件
- Setting up your Camel K development environment
OpenShift クラスター上に 1 つ以上のシークレットがある。
たとえば、以下のコマンドを使用してシークレットを作成できます。
oc create secret generic my-sec --from-literal=my-secret-key="very top secret"
手順
ConfigMap を参照する Camel K インテグレーションを作成します。
たとえば、以下のインテグレーション (名前:
ConfigSecretRoute.java
) は、my-sec
という名前のシークレットのmy-secret
プロパティーを参照します。import org.apache.camel.builder.RouteBuilder; public class ConfigSecretRoute extends RouteBuilder { @Override public void configure() throws Exception { from("timer:secret") .setBody() .simple("resource:classpath:my-secret") .log("secret content is: ${body}"); } }
インテグレーションを実行し、
--config
オプションを使用してシークレットをマテリアル化し、実行中のインテグレーションで使用できるようにします。以下に例を示します。kamel run --config secret:my-sec ConfigSecretRoute.java --dev
インテグレーションが起動すると、Camel K Operator はシークレットの内容で OpenShift ボリュームをマウントします。