2017-10-05 9 views
1

KubernetesのJava Appのコンフィグを扱うためのベストプラクティスは何ですか? yamlファイルのシステム変数でいくつかの例を見てきました。または、Javaプロパティファイルで「より良い」アプローチがありますか?Docker(Kubernetes)のJavaアプリケーションの設定

ポッドの異なるインスタンスに異なる設定を使用させる方法もありますか?

ありがとうございます! Mananana

+0

どのような設定ですか?例を挙げていただけますか? –

+0

外部システムのホスト名、認証資格情報、キュー名、...このようなもの。 – mananana

答えて

1

何の標準的な解決策はありませんが、それはあなたがいずれかを持っているか、環境変数として渡すいくつかのパラメータはOKだろう場合

を小文字ためにケースから依存しています。

多くのパラメータ(プロダクションとテスト環境で異なるパラメータセットを持っているとします)をプロパティファイルに集め、アプリケーションの起動時にプロパティファイル名を渡す方が便利です。これは、env変数を使用するか、または単に起動コマンドの引数として行うことができます。

プロパティファイル(またはプロファイル)は、一般的なフレームワーク(スプリングブートなど)でもよくサポートされており、起動時にプロファイルを渡すことができます。この場合、kubernates yamlはこのように見えるかもしれません:

env: 
    - name: SPRING_PROFILES_ACTIVE 
    value: production 
command: [ "bash", "-c", "java -jar App.jar"] 
関連する問題