使用docker暴露弹簧启动随机服务器端口

我们计划在运行相同应用程序的相同虚拟机上部署多个Docker镜像。 据我所知,我们需要在Docker容器中公开webapp端口。 但是如果我们打算在spring启动时使用“随机”服务器端口(使用server.port = 0),我们如何在运行时暴露这个随机端口?

– = – =第二个问题是,春季启动应用程序select随机端口是可用的主机虚拟机或docker容器空间?

Spring-boot在运行时分配端口,而不是在构build时。 这意味着,只有在本地或在Docker容器中启动应用程序之前,由Spring引导select的端口才会可用。

回答你的第二个问题是Docker挑选Docker Container中的端口。 所以,几乎所有的端口都可以使用,而不是OS使用的端口。

在合并这两个语句时,除非有特定的限制,否则应该手动指定端口来启动应用程序,并在docker run execution下暴露它?