Не удается увидеть адрес, когда nginx обрабатывает порт и выдает 502 Bad Gateway

Я столкнулся с проблемой при изучении nginx. У меня есть 2 сервера на 2 разных портах. Я хочу, чтобы при обращении к "http://localhost/api/v1/clients/" возвращалась страница с информацией, хранящейся на порту 8000. Теперь я получаю ошибку 502 Bad Gateway. В консоли: connect() failed (111: Connection refused) while connecting to upstream, client: 111.11.0.1, server: localhost, request: "GET /api/v1/clients/ HTTP/1.1", upstream: "http://111.11.0.2:80/api/v1/clients/", host: "localhost" Если я перейду по адресу: "http://localhost:8000/api/v1/clients/", все в порядке. В чем моя ошибка?

nginx:

upstream backend {
    server 127.0.0.1:8000;
    server 127.0.0.1:3000;
}

server {
    listen 80;
    server_name localhost;

    location /api/v1/clients/ {
        proxy_pass http://backend_client/api/v1/clients/; 
    }
}

docker:

services:
  backend_client:
    build: ./Client
    volumes:
      - ./Client/:/app
    ports:
      - "8000:8000"
    restart: always
    command:
      "gunicorn --bind=0.0.0.0:8000 django_app.wsgi"
  nginx:
    image: nginx:1.17
    container_name: ngx
    ports:
      - "80:80"
    volumes:
      - ./nginx:/etc/nginx/conf.d
    depends_on:
      - backend_client

Измените конфигурацию NGINX. Убедитесь, что вы читаете основную информацию о

Ваш бэкенд будет доступен как backend_client в вашем контейнере nginx. Восходящий поток будет backend. Ваше приложение все еще листится на порту 8000, и эта информация важна. Поэтому сообщите об этом NGINX :).

upstream backend {
    server backend_client:8000;
}

server {
    listen 80;

    location /api/v1/clients/ {
        proxy_pass http://backend/; 
    }
}


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