【发布时间】:2020-12-11 06:07:22
【问题描述】:
我正在一个 docker 容器中运行一个烧瓶应用程序。我想访问容器端口 8000
* Running on http://127.0.0.1:8000/
来自我的主机。
我正在运行 docker 容器
docker run -p 127.0.0.1:8080:8000 --rm $(IMAGE_NAME) /Stocks/startserver.sh
当我做docker ps
我看到以下文字
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
85168e4c963e stocks "/Stocks/startserver…" 12 seconds ago Up 11 seconds 127.0.0.1:8080->8000/tcp beautiful_bartik
当我在本地机器上打开 localhost:8080 时,我什么也看不到。 据我了解,端口是打开的,知道为什么我无法从主机连接到它吗? 有关如何为此调试解决方案的任何提示?
【问题讨论】:
-
省略
-p 8080:8000之类的 localhost ip 而不是-p 127.0.0.1:8080:8000,然后再试一次。 -
“在 127.0.0.1 上运行”部分表明 Flask 应用程序未配置为侦听 0.0.0.0“所有接口”地址,这意味着无法从容器外部访问它; Deploying a minimal flask app in docker - server connection issues 对此进行了更多描述。
-
@jdickel 我已经试过了。
标签: docker dockerfile containers webserver port