Как настроить два проекте на Docker и Nginx на одном сервере?

Всем привет, пытаюсь на одном сервере под разными ip запустить два сайта на django, возникает ошибка что порт занят, я исправил порты но сайт не страртует. Подскажите где ошибка пожалуйста? Ip работают, когда захожу по второму ip получаю переадресацию на первый сайт. Все настройки указал для второго сайта. В конце добавил настройку nginx первого сайта

#Django
# Should be one of dev, prod
MODE=prod
PORT=8008

#postgres
DB_NAME=xxx
DB_USER=xxx
DB_HOST=xxx
DB_PASSWORD=xxxx
DB_PORT=5432
POSTGRES_PASSWORD=mysecretpassword

#WSGI
WSGI_PORT=8008
WSGI_WORKERS=4
WSGI_LOG_LEVEL=debug

# Celery
CELERY_NUM_WORKERS=2

# Email
EMAIL_HOST_USER=xxxx
EMAIL_HOST_PASSWORD=xxxx

docker-compose.yaml

version: '3'

services:

  backend:
    build: ./
    container_name: site_container
    restart: always
    command: ./commands/start_server.sh
    ports:
      - "${PORT}:${WSGI_PORT}"
    volumes:
      - ./src:/srv/project/src
      - ./commands:/srv/project/commands
      - static_content:/var/www/site
    env_file:
      - .env
    depends_on:
      - postgres

  postgres:
    image: postgres:12
    volumes:
      - pg_data:/var/lib/postgresql/data
    env_file:
      - .env
#    environment:
#      - DJANGO_SETTINGS_MODULE=app.settings.${MODE}

  nginx:
    image: nginx:1.19
    volumes:
      - ./nginx:/etc/nginx/conf.d
      - static_content:/var/www/site
    ports:
      - 81:80
      - 444:443
    env_file:
      - .env
    depends_on:
      - backend

volumes:
  pg_data: {}
  static_content: {}

default.conf

server {
    listen 80 default_server;

    server_name 183.22.332.12;

    location /static/ {
        root /var/www/site;
    }

    location /media/ {
        root /var/www/site;
    }

    location / {
        proxy_set_header Host $host;
        proxy_pass http://backend:8010;
    }
}

default.conf первый сайт

server {
    #listen 80 default_server;
    listen 443 ssl http2;
    listen [::]:443 ssl http2;

    server_name site1 ip_site1;

    ssl_certificate /etc/letsencrypt/live/site1/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/site1/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/site1/chain.pem;

    location /static/ {
        root /var/www/artads;
    }

    location /media/ {
        root /var/www/artads;
    }

    location / {
        proxy_set_header Host $host;
        proxy_pass http://backend:8008;
    }
}

server {
    listen 80 default_server;

    server_name ip_site2 site2;

    location /static/ {
        root /var/www/gdr_mr;
    }

    location /media/ {
        root /var/www/gdr_mr;
    }

    location / {
        proxy_set_header Host $host;
        proxy_pass http://backend:8013;
    }
}

server {
        listen 80;
        listen [::]:80;

        server_name www.site1 site1;

        location / {
                return 301 https://site1$request_uri;
        }
}
Вернуться на верх