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

Docker部署Django服务后无法访问0.0.0.0:8000开发地址

问题修复方案

你的配置存在3处核心错误,按以下步骤修改即可解决访问问题:

1. 修正端口映射配置

docker-compose端口映射规则为宿主机端口:容器内服务监听端口,你当前配置的"8000:8001"将宿主机8000端口映射到了容器未使用的8001端口,但Django服务实际在容器内监听8000端口,请求根本无法到达服务。
将pairprogramming_be服务下的ports配置修改为:

ports:
  - "8000:8000"

2. 修正容器内路径配置

你使用的python:3基础镜像是Linux系统,不存在Windows系统的C:/盘符路径,当前Dockerfile和docker-compose中配置的WORKDIR、挂载路径全为Windows本地路径,容器内无法识别,会导致服务运行目录异常。

  • 修改Dockerfile中的WORKDIR为Linux容器标准工作路径:
WORKDIR /app
  • 修改docker-compose中对应服务的volumes、working_dir配置,你原来的volume配置多写了一个冒号属于语法错误,同步修正:
volumes:
  - "C:/Users/15512/Desktop/django-project/peerplatform:/app"
working_dir: /app

3. 修正访问地址与ALLOWED_HOSTS配置

  • 0.0.0.0是服务端绑定所有网卡的监听地址,不能作为客户端访问地址,浏览器访问请使用http://127.0.0.1:8000或http://localhost:8000
  • 你之前配置的127.0.0.0.1是错误的回环地址,正确地址为127.0.0.1,开发环境可以直接将.env中DJANGO_ALLOWED_HOSTS设为*,避免主机头拦截。

其他说明

你执行的容器IP查询命令仅能获取Docker默认bridge网络下的容器IP,docker-compose v3+默认会为服务创建自定义bridge网络,该字段返回空属于正常现象,不代表容器未分配IP。端口映射配置正确后,无需查询容器IP,直接访问宿主机端口即可。

验证步骤

  1. 执行docker-compose down -v删除旧的异常容器
  2. 按上述内容修改所有配置文件
  3. 执行docker-compose up --build重新构建并启动服务
  4. 浏览器访问http://127.0.0.1:8000即可正常加载页面

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 19:39:17