You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取本地FastAPI Docker容器的IP地址?

解决FastAPI Docker容器本地访问问题

核心问题分析

你的Docker配置存在两个关键问题:

  • uvicorn默认绑定127.0.0.1,仅容器内部可访问,外部无法连接
  • 启动容器时未做端口映射,本地端口与容器端口未打通
  • 容器运行无输出是因为--reload模式在容器环境中可能缓冲日志,需调整启动参数

分步解决方法

1. 修改Dockerfile中的uvicorn启动命令

将服务绑定地址改为0.0.0.0,让服务监听容器所有网卡:

FROM jhonatans01/python-dlib-opencv
COPY . .
RUN pip3 install -r requirements.txt
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--reload"]

2. 启动容器时添加端口映射

假设容器内uvicorn使用默认的8000端口,启动命令加上-p参数映射本地端口(示例用8000)到容器端口:

docker run -p 8000:8000 你的镜像名称

完成后直接通过http://127.0.0.1:8000访问服务,无需查找容器IP。

3. 查看容器IP(可选操作)

如果确实需要获取容器IP,先查看运行中容器的ID:

docker ps

再通过容器ID查询IP:

docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 容器ID

4. 解决容器无输出问题

启动容器时添加-it参数分配交互式终端,强制输出日志:

docker run -it -p 8000:8000 你的镜像名称

或者在启动命令中明确日志级别:

CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--reload", "--log-level", "info"]

内容的提问来源于stack exchange,提问作者eyah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 09:54:14