gpt4 book ai didi

docker - 如何从主机访问 Docker 容器的 Web 服务器

转载 作者:IT老高 更新时间:2023-10-28 12:34:35 31 4
gpt4 key购买 nike

我在 boot2docker 1.3.1 下运行。

我有一个通过 uwsgi --http :8080 运行 Web 服务器的 Docker 容器。

如果我附加到容器,我可以使用 lynx http://127.0.0.1:8080 浏览网站,因此我知道服务器正在运行。

我运行我的容器:

$ docker run -itP --expose 8080 uwsgi_app:0.2

它有以下细节:

$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5248ad86596d uwsgi_app:0.2 "bash" 11 minutes ago Up 11 minutes 0.0.0.0:49159->8080/tcp cocky_hypatia
$ docker inspect --format '{{ .NetworkSettings.IPAddress }}' 5248ad86596d
172.17.0.107

我认为我可以通过访问 http://172.17.0.107:49159 从主机访问该网站。

这不起作用。我只是在 Chrome 中看到“正在连接...”,但无处可去。

我做错了什么?

最佳答案

扩展 Anentropic's answer : boot2docker 是 Mac 和 Windows 的旧应用,docker-machine 是新的。

首先,列出你的机器:

$ docker-machine ls

NAME ACTIVE DRIVER STATE URL SWARM
default * virtualbox Running tcp://192.168.99.100:2376

然后选择其中一台机器(默认的叫default),然后:

$ docker-machine ip default

192.168.99.100

关于docker - 如何从主机访问 Docker 容器的 Web 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27191815/

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