Docker容器内Django应用Hot reload失效问题求助
Django Docker热重载失效的问题排查与修复
核心错误:路径拼写不一致
你的Dockerfile里设置的工作目录是/usr/project,但docker-compose.yml的volumes映射写成了/user/project(把usr误写为user),这导致本地文件根本没挂载到容器内Django实际运行的目录里,修改本地文件自然不会同步到容器,热重载也就没反应。
修复步骤
修改docker-compose.yml里的volumes配置:
volumes: - .:/usr/project
额外验证点
- 重启容器后,执行
docker exec -it <你的容器名称> cat /usr/project/[你修改的文件名],确认本地修改的内容已经同步到容器内的对应文件。 - 确保
runserver命令没有添加--noreload参数(你当前的命令是正确的,默认开启热重载)。 - 如果是Windows系统,Docker的文件挂载可能存在通知延迟,可以试试在容器内直接修改文件(
docker exec -it <容器名> nano <文件路径>),看是否能触发热重载,以此排除本地系统的问题。
内容的提问来源于stack exchange,提问作者mohamed naser
相关产品推荐
相关产品推荐

