【问题标题】:"bind: An attempt was made to access a socket in a way forbidden by its access permissions"“绑定:试图以访问权限禁止的方式访问套接字”
【发布时间】:2020-09-04 09:01:08
【问题描述】:

假设我们有基于 Docker Desktop(适用于 Windows)的 frontendbackend 容器。

Backend 容器使用端口9001frontend 容器监听9001

问题是端口9001已被英特尔驱动程序使用Windows 10,不可能在此端口上运行容器:

来自守护程序的错误响应:端口不可用:监听 tcp 0.0.0.0:9001:绑定:尝试以访问权限禁止的方式访问套接字。

如果无法直接从应用程序代码更改此端口,您能否告知如何处理此端口?

【问题讨论】:

    标签: windows docker networking routes port


    【解决方案1】:

    几种方法:

    • 使用docker run 命令时,请指定要使用的主机端口,并将其设置为9001 以外的其他值。即-p 9002:9001Docker Compose,即
    ports:
          - '9002:9001'
    

    然后从主机(Win 10)访问容器时使用端口9002而不是9001

    • 使用 Nginx 并设置反向代理,启动容器时将主机端口留空,这样主机上就不会打开外部帖子,并让反向代理将其传递给容器的 9001 端口。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多