Я пытаюсь справиться с этим уже несколько дней, и я не могу сделать это после прочтения множества учебников, документов и вопросов здесь.Проблема в том, что в моем проекте django с gunicorn и nginx в контейнере Docker нет статических файлов для моего сайта (404), но есть статические файлы для страницы администратора (что очень странно для меня).Вот мои конфиги:
DJANGO DOCKERFILE
FROM python:3
ENV PYTHONUNBUFFERED 1
ENV DJANGO_SETTINGS_MODULE=memes.settings_prod
RUN mkdir /code
WORKDIR /code
COPY . /code/
RUN pip install -r env_properties/prod/base.txt
RUN pip install -r env_properties/prod/prod.txt
RUN python manage.py collectstatic --noinput
RUN python manage.py migrate --noinput
NGINX DOCKERFILE
FROM nginx
RUN adduser --system --no-create-home --shell /bin/false --group --disabled-login nginx
RUN apt-get update
RUN apt-get install nano -y
COPY env_properties/nginx/nginx.conf /etc/nginx/nginx.conf
RUN mkdir /code
RUN mkdir /code/static
WORKDIR /code
COPY ./static /code/
NGINX CONFIG
location /static {
autoindex on;
alias /code/static;
}
DOCKER-COMPOSE
версия: '3'
услуги:
web:
container_name: django_web
build:
context: .
dockerfile: ./env_properties/prod/Dockerfile
command: gunicorn -w 4 memes.wsgi:application -b 0.0.0.0:8000
environment:
- DJANGO_SETTINGS_MODULE=memes.settings_prod
volumes:
- .:/code
ports:
- '8000:8000'
nginx:
container_name: nginx_server_2
command: nginx -g 'daemon off;'
build:
context: .
dockerfile: env_properties/nginx/Dockerfile
depends_on:
- web
ports:
- "0.0.0.0:80:80"
tty: true
Я захожу на мои страницы и на странице администратора у меня есть http://0.0.0.0/static/admin/css/base.css
URL запроса, которого нет ни на django_web
или nginx_server_2
контейнер (и он загружается)
И на моей странице у меня есть http://0.0.0.0/static/memes_apps/style.css
URL-адрес запроса и /static/memes_apps/style.css
присутствует в обоих контейнерах django и nginx
Пожалуйста, скажите мне, что яя делаю неправильно ..