docker – Windows容器中的控制台应用程序或Windows服务?

前端之家收集整理的这篇文章主要介绍了docker – Windows容器中的控制台应用程序或Windows服务?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试使用.net 4.5在Server 2016 CTP5上构建基于Windows容器的微服务.

在非容器世界中,我使用部署为Windows服务的控制台应用程序来订阅队列并完成其工作.

在一个容器中,我可以运行控制台应用程序,它似乎运行得很好.是否需要将其安装为Windows服务?

最佳答案
不,您不希望将其安装为服务.在容器中运行应用程序时,Docker会监视容器中的活动进程.如果活动进程停止,则容器退出.因此,您应该在前台运行您的应用程序,并让Docker将容器放在后台(通过使用docker run -d启动它).

一个例外是现有平台已经是Windows服务 – 例如microsoft/iis图像. IIS正在容器的后台运行,因此您需要启动另一个进程来保持容器运行 – 这就是为什么您看到IIS容器启动如下:

docker run -d -p 80:80 microsoft/iis ping -t localhost

ping命令使容器保持运行,而IIS服务实际响应请求.但这并不理想,Docker正在监视ping,因此如果IIS服务停止,容器会继续运行.

猜你在找的Docker相关文章