gpt4 book ai didi

Docker - 主机上的代理容器端口

转载 作者:行者123 更新时间:2023-12-02 20:51:39 25 4
gpt4 key购买 nike

我在我的 Windows 机器上运行了一个 Ubuntu VM(为此我使用 Vagrant 和 VirtualBox)。我在 VM 中运行两个 docker 容器,一个是 DB,另一个是 Web 服务器。我想通过主机代理 web 容器,以便我可以从 windows 机器浏览 web 容器。

docker 对此有帮助吗,还是我需要虚拟机上的 HAProxy 之类的东西?

最佳答案

有不同的方法来实现这一点。

让我们首先假设您在 Docker 主机上运行以下容器:

docker run -d -p 80:80 tutum/hello-world

-p 选项告诉 Docker 打开端口 80在 Docker 主机上并将流量转发到端口 80 Docker 容器。

通过为您的 Vagrant box 分配静态 IP

在您的 Vagrantfile 中,您可以通过添加以下内容为您的 Vagrant 框分配一个固定 IP:
config.vm.network "private_network", ip: "176.16.0.3"

然后从 Windows 中打开 http://176.16.0.3/

通过在您的 Vagrant 框中转发一个端口

如果您不想为 Vagrant 机器分配固定 IP 地址,则可以将 Ubuntu 机器的端口 80 转发到 Vagrant 主机(Windows 机器)的端口 80。

在你的 Vagrantfile 中,放
config.vm.network "forwarded_port", guest: 80, host: 80

现在,在 Windows 机器上,您可以通过 http://localhost/ 访问网络服务器。 .

其他注意事项

请注意,在您的 Docker 容器中,您的网络服务器必须接受来自外部的连接。换句话说,您需要绑定(bind)到特殊的 0.0.0.0网络接口(interface),而不仅仅是 localhost127.0.0.1 .

关于Docker - 主机上的代理容器端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32615773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com