我們正在將我們的ruby微服務移動到kubernetes,並且我們用於在config/application.yml
中保存特定於環境的配置。使用kubernetes,您可以爲每個服務創建特定於環境的文件,例如config/kubernetes/production.yml
等如何使用kubernetes配置環境特定的應用程序配置
儘管kubernetes pod配置文件能夠容納環境變量,但您似乎無法在其中保存結構化數據。
舉一個例子,在application.yml
我們有
development: &development
process:
notifier:
type: 'terminal-notifier'
...
production: &production
process:
notifier:
type: 'airbrake'
api_key: 'xxxx'
host: 'xxx.xxx.com'
...
是否合理,繼續這種做法與kubernetes並在application.yml
破壞環境了或根本kubernetes有其他最佳實踐置備吊艙結構化配置?
注意,直到所有的服務都遷移,我們基本上保持配置爲這樣:
kubernetes_staging:
<<: *staging
...
將它的工作有一個配置/ application.yml文件,並將它放入您的碼頭工人的形象,並使用相同的圖像爲各類吊艙,然後控制通過改變'-e'參數來使用哪個環境?例如: '.spec.container []。command:[「rails」「server」「-e」,「production」]' –
這就是我們現在正在做的事情。我們通過設置「RUN_ENV」環境變量來指定kubernetes配置中的參數。所以我想用rails的方式保持最佳做法? – user1047833
我對Rails沒有任何經驗,所以我不能說那個。 –