在 Docker 中为 Windows 保存动态端口

Save Dynamic port in Docker for Windows

有什么方法可以保存和访问 Docker 为每个容器创建的动态端口?我们需要它是动态的,但现在我们不知道如何保留它们,因为我们需要在其他地方使用它。也许环境变量是一种方式?这是 Windows 中的 Docker。

映射端口可通过 Docker API 在 containers endpoint

信息通过以下方式暴露在 cli 中:

docker port CONTAINER

可以从 docker inspect 中提取相同的信息,这允许您使用 --formatGo templates

格式化输出
docker inspect CONTAINER --format ^
  '{{ range $i, $el := .NetworkSettings.Ports }}{{(index $el 0).HostPort}}{{end}}'