如何从docker容器获取主机上的映射端口?

我想在不同主机上的一些docker容器中运行任务。我还编写了一个管理器应用程序来管理容器(启动任务、停止任务、获取状态等)。一旦容器启动,它将向管理器发送一个http请求及其地址和端口,以便管理器知道如何管理容器

由于同一台主机上可能运行多个容器,因此它们将映射到不同的端口。要在我的manager上注册容器,我必须知道每个容器映射到哪个端口

如何在docker容器中获取映射端口

这里有一个解决方案,如何从docker容器中知道主机的映射端口。但是如果我用-P运行container,它就不适用了。因为这个问题是在一年多前提出的,我想知道docker可能增加了一个新功能来解决这个问题

您还可以选择您的docker端口容器\u id

医生

https://docs.docker.com/reference/commandline/port/

文档中的示例

$docker端口测试
7890/tcp->0.0.0.0:4321
9876/tcp->0.0.0.0:1234
$docker端口测试7890/tcp
0.0.0.0:4321
$docker端口测试7890/udp
2014/06/24 11:53:36错误:未发布用于测试的公共端口“7890/udp”
$docker端口测试7890
0.0.0.0:4321

发表评论