Django работает на порту 8000, но порт изображения в продакшене 80

Я сериализовал свою модель и она работает хорошо, за исключением проблемы

Это мой serializers.py

class AuthorSerializer(serializers.ModelSerializer):
    class Meta:
        model = User
        fields = ("first_name", "last_name", "avatar",)

вот что я вижу в браузере, Пожалуйста, посмотрите на это, порт адресной строки и порт изображения не совпадают.

enter image description here

Все работает хорошо, проблема возникает, когда я запускаю проект на Docker, используя nginx и gunicorn

Вот мой конфиг nginx.

server {
    listen 8000;

    location /static {
        alias /backend/staticfiles;
    }
    location /media {
        alias /backend/media;
    }

    location / {
        proxy_pass http://backend:8000;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;
        proxy_redirect off;
    }
}

и это мой docker-compose.yml

version: '3.7'

services:
  backend:
    build:
      context: .
    volumes:
      - static_data:/backend/staticfiles
      - "./dist/media:/backend/media" # map to local machine
    env_file: # if .env in root, we have to show .env here must
      - ./.env
    depends_on:
      - db

  proxy:
    build:
      context: ./proxy
    volumes:
      - static_data:/backend/staticfiles
      - "./dist/media:/backend/media" # map to local machine
    ports:
      - "8000:8000"
    env_file: # if .env in root, we have to show .env here must
      - ./.env
    depends_on:
      - backend
      - db
  db:
    image: postgres
    volumes:
      - database:/var/lib/postgresql/data
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
    ports:
      - "5432:5432"
volumes:
  static_data:
  database:

и это entrypoint.sh

  #!/bin/sh
    set -e
    python manage.py migrate

gunicorn mysite.wsgi:application --bind :8000

Все работает отлично, кроме этой проблемы с портом, почему django-rest-framework рендеринг в порту 80 так как мой сервер работает на port 8000?

вот мой models.py

class User(AbstractUser):
    avatar = models.ImageField(upload_to='avatars/', null=True, blank=True)
Вернуться на верх