的disclude development.conf使用Scala的playframework 2.5,如何從泊塢窗影像創作發揮的框架應用神器
我使用SBT插件PlayScala
構建應用程序,裝入瓶內,
,然後建立並推動一個泊塢窗圖像使用sbt插件DockerPlugin
駐留在源代碼存儲庫conf/development.conf
(與application.conf
相同)。 application.conf
的最後一行說include development
這意味着如果存在development.conf
,則其中的條目將覆蓋application.conf
中的某些條目,這樣可以提供使應用程序立即可在本地運行的所有缺省值源代碼從源代碼控制克隆,零額外配置。這種技術可以讓每一位新開發人員在正常工作的應用程序中正常工作,而不會浪費配置時間
完成架構設計的唯一缺失部分是找到一種方法,從應用程序的最終運行時排除development.conf
- 否則這將覆蓋泄漏到生產運行時,並且顯然應用程序無法運行。
這可以通過各種不同的方式實現。
一種方法可能是如何將邏輯注入構建任務(作爲sbt的一部分,我假設爲PlayScala的一部分)以從jar工件中排除文件。 其他方式可能是將邏輯注入Docker鏡像創建過程。這個邏輯可以手動執行它之前刪除現有的罐子development.conf
(假設這是可能的)
如果你實現提供的一個想法, 或者一些不同的架構方式,給出了同樣的「開箱的「功能,請還跟分享:)
以下是Play文檔中討論如何將備用配置文件作爲主文件的部分:https://www.playframework.com/documentation/2.6.x/ProductionConfiguration#Using--Dconfig.resource –