Svyaz

13.07.2026

nginx reverse proxy docker compose

Svyaz VPN — свобода без границ

Навигация по базовому конфигурованию NGINX в Docker Compose

Сегодня мы рассмотрим основы настройки NGINX в качестве ресервного прокси-сервера с помощью Docker Compose. NGINX — это популярный веб-сервер, который широко используется в качестве ресервного прокси-сервера для обеспечения безопасности и масштабируемости веб-приложений.

Введение в NGINX и ресервные прокси-серверы

Ресервный прокси-сервер — это сервер, который принимает запросы от клиентов и перенаправляет их к внутренним серверам. Этот подход обеспечивает защиту от атак на внутренние серверы и позволяет масштабировать веб-приложения без изменения конфигурации внутренних серверов.

Настройка NGINX в Docker Compose

Для настройки NGINX в качестве ресервного прокси-сервера с помощью Docker Compose нам понадобится файл docker-compose.yml. Этот файл содержит конфигурацию для NGINX и внутренних серверов.

Ниже пример файла docker-compose.yml:

version: '3'
services:
  nginx:
    image: nginx:latest
    ports:
      - "8080:80"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
    depends_on:
      - backend

  backend:
    build: .
    ports:
      - "8081:80"

В этом примере мы создали два сервиса: nginx и backend. Сервис nginx представляет собой контейнер NGINX, который listens на порту 8080 и перенаправляет запросы к внутреннему серверу backend.

Конфигурация NGINX

Конфигурация NGINX хранится в файле nginx.conf, который мы объявили в разделе volumes в файле docker-compose.yml. Ниже пример конфигурации NGINX:

http {
    upstream backend {
        server backend:8081;
    }

    server {
        listen 80;
        location / {
            proxy_pass http://backend;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
}

В этом примере мы объявили upstream-сервер backend и конфигурировали NGINX перенаправлять запросы к этому серверу.

Запуск контейнеров

Чтобы запустить контейнеры, мы можем выполнить команду docker-compose up. Это скомпилирует файл docker-compose.yml и запустит контейнеры.

Результты

После запуска контейнеров, мы можем проверить работу NGINX в качестве ресервного прокси-сервера, обращаясь к http://localhost:8080. NGINX должен перенаправить запросы к внутреннему серверу backend.

Вывод

В этом примере мы рассмотрели основы настройки NGINX в качестве ресервного прокси-сервера с помощью Docker Compose. Мы создали конфигурацию NGINX и внутреннего сервера и рассмотрели работу NGINX в качестве ресервного прокси-сервера.