首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >每当配置文件发生更改时,在Docker容器中重新启动进程

每当配置文件发生更改时,在Docker容器中重新启动进程
EN

Stack Overflow用户
提问于 2016-08-12 03:15:19
回答 1查看 910关注 0票数 1

我有一个DockerFile,它使用一个jar文件和一个配置文件作为参数,在一个docker容器中启动2个进程

java -jar进程1.jar进程1.cfg& java -jar进程2.jar进程2.cfg

process1.cfg和process2.cfg驻留在挂载的目录中。现在,每当cfg文件中有任何更改时,我都需要重新启动相应的进程才能使新更改生效。所有这些都可以使用REST微服务中的Java以编程方式完成,该服务更新配置文件并重新启动进程。你知道该怎么做吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-12 03:30:45

这个问题通常可以通过Java应用程序启动配置更改监视服务/线程来解决,该服务/线程通过在开始时启动实际的业务服务/线程并在任何更改时重新启动(如果更改实际上需要重新启动)来管理实际的业务服务/线程。文件更改监视是标准的Java功能。该解决方案不需要任何REST,它不绑定到微服务架构(尽管它在其中更明智),也不受停靠容器的限制。

如果你不想要任何基于文件的配置,也可以这样做,但是监控位可以是一个基于vert.x的web服务器,监听外部REST请求,提供配置,在启动时或任何更新。其余部分保持不变。

在我目前的工作场所,我们实际上有一个模块就是以这种方式工作的,它被部署到docker上,并使用文件系统监控和vert.x web服务器进行配置更改。

如果需要支持多个配置,您甚至可以更进一步,让监控位在内部启动多个实例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38904434

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档