[英]pass external config file to docker container at runtime
I have a scala sbt application and have a default application.conf.我有一个 scala sbt 应用程序并且有一个默认的 application.conf。 I built a docker image to run this application via docker.
我构建了一个 docker 镜像来通过 docker 运行这个应用程序。 How can I replace the default
application.conf
in the docker container at a run time?如何在运行时替换 docker 容器中的默认
application.conf
?
I'd recommend instead of passing application.conf
file with overrides, go with overrides based on environment variables, because of reasons like:我建议不要通过覆盖传递
application.conf
文件,而是使用基于环境变量的覆盖,原因如下:
So, you can do next: In your application conf set overrides via environment variable:因此,您可以执行以下操作:在您的应用程序 conf 中通过环境变量设置覆盖:
foo=default
foo={?FOO}
And run application docker container with specific override:并使用特定覆盖运行应用程序 docker 容器:
docker run ...
-e foo=bar \
...
Please, see for more details:请参阅以获取更多详细信息:
Optional system or env variable overrides
: https://github.com/lightbend/config#optional-system-or-env-variable-overrides Optional system or env variable overrides
: https : //github.com/lightbend/config#optional-system-or-env-variable-overrides Hope this helps!希望这可以帮助!
docker run ... \ --volume=[[YOUR-HOST-PATH]]/application.conf:[[YOUR-IMAGE-PATH]]/application.conf ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.