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

Docker化Django+Nginx启动挂载异常:rac_backend模块找不到

Docker化Django环境的ModuleNotFound与静态文件路径问题解决方案

一、解决ModuleNotFoundError: No module named 'rac_backend'

  • 检查settings.py的INSTALLED_APPS配置,确认rac_backend被正确添加且拼写无误。
  • 在Django服务的Dockerfile中设置Python路径:添加ENV PYTHONPATH=/app(假设项目代码挂载在容器的/app目录),确保容器能识别模块路径。
  • 确认rac_backend目录下存在__init__.py文件(空文件即可,用于标记这是一个Python模块)。
  • 验证docker-compose.yml中Django服务的volumes配置,确保本地Rac/django目录正确挂载到容器内对应路径,示例:
    volumes:
      - ./Rac/django:/app
    
    进入容器执行ls /app,确认能看到rac_backend目录。

二、修复静态/媒体文件路径与自动生成空目录问题

  • 修改settings.py中的静态与媒体文件配置:
    import os
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    
    # 静态文件配置
    STATIC_URL = '/static/'
    STATIC_ROOT = os.path.join(BASE_DIR, 'files/static')
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'files/static'),
    ]
    
    # 媒体文件配置
    MEDIA_URL = '/media/'
    MEDIA_ROOT = os.path.join(BASE_DIR, 'files/media')
    
    确保BASE_DIR指向容器内的项目根目录,避免路径错误。
  • 调整docker-compose.yml的卷挂载,确保本地Rac/django/files目录挂载到容器内对应路径,避免自动生成空目录:
    volumes:
      - ./Rac/django:/app
    
    提前在本地创建Rac/django/files/static和Rac/django/files/media目录,并设置权限:chmod -R 755 Rac/django/files。
  • 检查Nginx配置文件,确保静态/媒体文件的location指向正确路径:
    location /static/ {
        alias /app/files/static/;
    }
    
    location /media/ {
        alias /app/files/media/;
    }
    
  • 清理旧容器与卷后重新构建启动:
    docker-compose down -v
    docker-compose build --no-cache
    docker-compose up
    

三、恢复Django默认页面访问

  • 确认docker-compose.yml中Django服务的端口映射正确,例如:
    services:
      django:
        ports:
          - "8000:8000"
    
  • 检查Nginx的反向代理配置,确保指向Django服务:
    location / {
        proxy_pass http://django:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
    
    其中django是docker-compose.yml中Django服务的名称,确保Nginx能正常解析该服务地址。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 15:02:26