Путаница при создании статических файлов, обслуживаемых docker (проблема с конфигурацией)

Моя проблема заключается в том, чтобы настроить мой проект wagtail settings.py для корректного обслуживания статических файлов, и я пытался искать по этой теме, но docker + wagtail (wagtail в существовавший проект django) не в интернете pls помочь мне, если вы хорошо разбираетесь в этом: Dockerfile:

FROM python:3.9-slim-buster
LABEL maintainer="londonappdeveloper.com"

ENV PYTHONUNBUFFERED=1

# Copy application files
COPY ./requirements.txt /requirements.txt
COPY . /app
# COPY except_nextgen.sql /docker-entrypoint-initdb.d/except_nextgen.sql
#added during uwsgi server
COPY ./scripts /scripts

WORKDIR /app
EXPOSE 8000


# Set up virtual environment
RUN python -m venv /py && \
    /py/bin/pip install --upgrade pip

# Install dependencies
RUN apt-get update && apt-get install --no-install-recommends -y \
    build-essential \
    libpq-dev \
    gcc \
    exiftool \
    imagemagick \
    libmagickwand-dev \
    libmagic1 \
    && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
    && rm -rf /var/lib/apt/lists/*

# Install Python dependencies
RUN /py/bin/pip install -r /requirements.txt

# Set up directories for static and media files
RUN adduser --disabled-password --no-create-home app && \
    mkdir -p /vol/web/static && \
    mkdir -p /vol/web/media && \
    chown -R app:app /vol && \
    chmod -R 755 /vol && \
    chmod -R +x /scripts


# original:ENV PATH="/py/bin:$PATH" updated(uwsgi):ENV PATH="/scripts:/py/bin:$PATH"
ENV PATH="/scripts:/py/bin:$PATH"
# ENV PATH="/py/bin:$PATH"

USER app

CMD ["run.sh"]

settings.py:

import os

from django.utils.translation import gettext_lazy as _

PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))
BASE_DIR = os.path.dirname(PROJECT_DIR)

STATICFILES_DIRS = [os.path.join(PROJECT_DIR, "static")]

STATIC_ROOT = os.path.join(BASE_DIR, "/vol/web/static")
STATIC_URL = "/static/"

MEDIA_ROOT = os.path.join(BASE_DIR, "/vol/web/media")

os.environ.setdefault("MEDIA_URL", "/media/")
MEDIA_URL = os.environ.get("MEDIA_URL")

LOCALE_PATHS = [
    os.path.join(BASE_DIR, "locale"),
]

я пытаюсь заставить контейнер docker корректно обслуживать статические файлы, но он выдает ошибку, связанную с внутренней ошибкой сервера /favicon.ico

Вернуться на верх