当前位置: 首页 > 知识库问答 >
问题:

没有打开两个端口

令狐唯
2023-03-14

当我尝试在创建选项中使用第二个端口时,它会正确创建第一个端口,但不会创建第二个端口。

"createOptions": {
  "Env": [
    "DATA_DIR=/tmp/localstack/data",
    "DOCKER_HOST=unix:///var/run/docker.sock",
    "SERVICES=apigateway"
  ],
  "Image": "localstack/localstack:0.12.10",
  "name": "commandeer-localstack-default-local",
  "ExposedPorts": {
    "443/tcp:": {}
  },
  "HostConfig": {
    "PortBindings": {
      "4566/tcp": [
        {
          "HostPort": "4566"
        }
      ],
      "443/tcp": [
        {
          "HostPort": "443"
        }
      ]
    },
    "AutoRemove": true,
    "Binds": [
    "/var/run/docker.sock:/var/run/docker.sock"
  ]
  }
}

这应该公开4566和443,但是当我检查新创建的容器时,它有这个信息。

      "Bridge": "",
      "SandboxID": "f55fe8aad382e3fb418c419bdee6ad52c2540c160b93d0f7164a5cd8088ea00a",
      "HairpinMode": false,
      "LinkLocalIPv6Address": "",
      "LinkLocalIPv6PrefixLen": 0,
      "Ports": {
        "443/0": null,
        "4566/tcp": [
         {
           "HostIp": "0.0.0.0",
           "HostPort": "4566"
         }
        ],
        "4571/tcp": null,
        "8080/tcp": null
     },

您可以看到4566设置正确,但443/0:null用于443端口。我在没有ExposedPorts部分的情况下尝试了这一点,更改了HostOptions的顺序,等等,但它仍然不起作用。有什么想法吗?

共有1个答案

冯枫涟
2023-03-14

所以,我终于成功了。我将HostIp设置为空字符串。我仍然需要使用443的暴露端口。但这确实对我有用。

"createOptions": {
  "Env": [
    "DATA_DIR=/tmp/localstack/data",
    "DOCKER_HOST=unix:///var/run/docker.sock",
    "SERVICES=apigateway"
  ],
  "Image": "localstack/localstack:0.12.10",
  "name": "commandeer-localstack-default-local",
  "ExposedPorts": {
    "443/tcp:": {}
  },
  "HostConfig": {
    "PortBindings": {
      "4566/tcp": [
        {
          "HostPort": "4566",
          "HostIp": ""
        }
      ],
      "443/tcp": [
        {
          "HostPort": "443"
          "HostIp": ""
        }
      ]
    },
    "AutoRemove": true,
    "Binds": [
    "/var/run/docker.sock:/var/run/docker.sock"
  ]
  }
}
``
 类似资料:
  • 问题内容: 我正在尝试用Java(仅我知道的语言,我刚刚学习线程)创建一个自动单击器。我希望在其自己的窗口(而不是在网页上)中打开小程序,并且希望能够在不选择窗口的情况下使用空格键启动和停止该程序,以便可以在其他程序上使用自动单击器并能够停止它而无需alt-f4一堆东西。 您有什么可以推荐我的,可以帮助我实现这一目标的吗?或您有什么建议吗? 问题答案: 这可能超出了Java小程序的范围。实际上,全

  • 我正在docker容器中部署一个应用程序,它在启动时随机分配端口。问题是我想使用< code>docker-compose,但是有没有一种方法可以使用docker-compose公开服务的所有端口?如果没有docker-compose,我会使用< code>docker run...-P 谢谢

  • 我想从Solution Explorer中选择两个C#代码文件进行文本比较。我的机器上安装了WinMerge,它在命令行上接受多个文件名。所以我试着用Openwith。。。命令并将WinMerge添加到现有选项列表中。但问题是我不知道在Arguments文本框中写什么。将其设置为%1只需将第一个选定的文件发送到WinMerge即可。%VS无法识别2,并将其粘贴到WinMerge中。 发送两个文件的

  • 在尝试打开EclipseOxygen时,在Red Hat Linux env 64位中出现以下错误。在linux环境中也安装了jdk 8。 JVM终止。退出代码=1 /usr/java/jdk1.7.0_67-cloudera/bin/java -Dosgi.requiredJavaVersion=1.8 -多斯基。例子地区默认值=@user。主/eclipse工作区 -XX:UseG1GC -X

  • 我是一个python初学者,尝试使用selenium在Win 10和Anaconda 2.5上打开Firefox。我刚刚下载了Firefox并在Anaconda上安装了selenium,所以它们是最新的。当我键入以下内容时: Firefox在任务栏中打开一秒钟,然后消失。但是如果我关闭cmd线,火狐会在窗口上打开。cmd提示符上的光标在闪烁,所以当我等待时,我会收到错误消息。我该怎么解决这个问题?

  • 问题内容: 除了脚本自己的控制台 (不执行任何操作)之外, 我想打开两个控制台并打印变量,并在不同的控制台中,如何实现此目的。 我不知道如何实现这一目标,并花了几个小时尝试使用诸如但没有运气的模块来实现这一目标。顺便说一下,我在窗户上。 请问模块做的工作?还是需要? 问题答案: 如果您不想重新考虑问题并使用@Kevin回答中的GUI,则可以使用module同时启动两个新控制台,并在打开的窗口中显示