如何在MacOS上使用Docker Desktop监听主机Localhost

w46czmvw  于 2023-10-19  发布在  Docker
关注(0)|答案(1)|浏览(182)

我正在一个容器中运行一个特殊用途的Web服务器。主机是一台运行Docker Desktop的Mac。我需要Web服务器只能从我的MacBook上运行的Web浏览器访问。
如果我使用端口Map(例如-p 80:80),Web服务器可以通过Mac的www.example.com访问127.0.0.1,但它也会侦听Mac的IP地址,在这种情况下这是不可接受的。
如果这不是Docker,我会告诉Web服务器监听127.0.0.1,但这是无法从容器外部访问的。
如何在Docker for Mac上的容器中运行Web服务器,并让它只在Mac的本地主机上侦听?

vmdwslir

vmdwslir1#

小菜一碟......与Docker for Mac的特性无关。请将此放入docker-compose.yml
在Dockerfile中暴露端口。将其放入docker-compose.yml中

network_mode: "bridge"
ports:
  - "127.0.0.1:80:80"

(将端口替换为80)。
通过使用网桥网络,您的容器将可以访问所有主机IP。在“端口”中指定的IP只Map到指定的主机IP。

相关问题