13.07.2026
nginx reverse proxy docker compose
Навигация по базовому конфигурованию 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 в качестве ресервного прокси-сервера.