docker “bind:试图以访问权限禁止的方式访问套接字”

wgx48brx  于 2023-04-29  发布在  Docker
关注(0)|答案(1)|浏览(207)

假设我们有基于Docker Desktop(用于Windows)的frontendbackend容器。
Backend容器使用端口9001frontend容器侦听9001
问题是端口9001已经被Windows 10的Intel驱动程序使用,无法在此端口上运行容器:
来自守护程序的错误响应:端口不可用:监听tcp 0.0.0.0:9001:绑定:试图以套接字访问权限所禁止的方式访问套接字。
如果不能直接从应用程序代码中更改此端口,您能否建议如何处理此端口?

ycggw6v2

ycggw6v21#

有几种方法:

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

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

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

相关问题