+7 (495) 107-75-45 Подключение
+7 (495) 107-75-47 Тех. поддержка 24/7
Пример
22.10.2024

Nginx Proxy Manager: История создания, отличия и функции

История создания Nginx Proxy Manager

Nginx Proxy Manager — это удобный и интуитивно понятный графический интерфейс для работы с Nginx в качестве обратного прокси-сервера. Сам проект был создан для того, чтобы сделать работу с Nginx более доступной для пользователей, которым может быть сложно работать с конфигурационными файлами вручную. Он разрабатывался как open-source проект, основанный на Node.js, с использованием Nginx в качестве основного инструмента для обработки запросов. Основной целью разработки было создание простой в использовании платформы, которую можно было бы установить за несколько минут и без необходимости глубоко разбираться в конфигурациях Nginx.

Идея о создании Nginx Proxy Manager возникла в ответ на растущую потребность у разработчиков и системных администраторов в простых и мощных инструментах для управления прокси-серверами. В отличие от традиционного способа настройки Nginx через редактирование конфигурационных файлов, Nginx Proxy Manager предлагает интуитивный интерфейс для создания и управления прокси-хостами, управления SSL-сертификатами и настройками безопасности.

История Nginx Proxy Manager

Отличия Nginx Proxy Manager от других решений

  1. Удобство интерфейса: Одно из главных преимуществ Nginx Proxy Manager — это удобный графический интерфейс. Многие аналогичные решения требуют от пользователя знания командной строки и конфигурационных файлов. Здесь же пользователи могут выполнять все основные задачи через веб-интерфейс, что значительно снижает порог входа для новичков.
  2. Управление SSL-сертификатами: Nginx Proxy Manager делает процесс получения и обновления SSL-сертификатов Let’s Encrypt очень простым. Пользователям достаточно ввести доменное имя, и система автоматически сгенерирует и применит SSL-сертификат. В некоторых других инструментах для выполнения этого шага требуется больше ручной работы.
  3. Поддержка мульти-доменов и многопользовательская система: В отличие от некоторых других решений, Nginx Proxy Manager позволяет легко управлять несколькими доменами и настроить многопользовательскую систему с разными уровнями доступа. Это делает его полезным для организаций, где требуется управление большим количеством доменов или предоставление доступа разным пользователям.
  4. Легкость установки и настройки: С помощью Docker Nginx Proxy Manager можно развернуть и настроить за несколько минут. Это большое преимущество перед более сложными решениями, такими как Traefik или HAProxy, которые требуют больше времени на конфигурирование.

Установка Nginx Proxy Manager

Основные функции Nginx Proxy Manager

  1. Обратный прокси-сервер: Главная функция Nginx Proxy Manager — это возможность легко настроить обратный прокси для маршрутизации запросов на разные серверы. Это полезно для тех, кто хочет управлять несколькими веб-приложениями или сайтами на одном сервере.
  2. SSL-сертификаты: Интеграция с Let’s Encrypt позволяет автоматически получать, настраивать и обновлять SSL-сертификаты для каждого прокси-хоста. Это повышает уровень безопасности сайтов и снижает риски, связанные с устаревшими или неправильными сертификатами.
  3. Управление доменами: Пользователи могут легко управлять несколькими доменами через веб-интерфейс. Можно настроить поддомены, изменить маршрутизацию запросов для разных хостов, а также организовать автоматические перенаправления.
  4. Многопользовательская поддержка: Система позволяет создавать несколько учетных записей с разными правами доступа. Это полезно в случаях, когда несколько администраторов должны иметь доступ к управлению системой, но каждый с разными уровнями доступа.
  5. Перенаправление запросов и редиректы: Возможность легко настраивать редиректы (301 и 302) и перенаправления запросов, что полезно для управления веб-трафиком.
  6. Журналирование и мониторинг: Nginx Proxy Manager ведет логи запросов, что позволяет отслеживать и анализировать трафик. Это помогает в поиске проблем с соединением и в улучшении производительности.

Установка Nginx Proxy Manager

Создайте docker-compose.ymlфайл:

Вот пример того, как docker-compose.ymlбудет выглядеть ваш результат при использовании контейнера MariaDB:

version: '3.8'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      # These ports are in format <host-port>:<container-port>
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP
    environment:
      # Mysql/Maria connection parameters:
      DB_MYSQL_HOST: "db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "npm"
      DB_MYSQL_NAME: "npm"
      # Uncomment this if IPv6 is not enabled on your host
      # DISABLE_IPV6: 'true'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    depends_on:
      - db

  db:
    image: 'jc21/mariadb-aria:latest'
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'npm'
      MARIADB_AUTO_UPGRADE: '1'
    volumes:
      - ./mysql:/var/lib/mysql

Обновление Nginx Proxy Manager

Обновление

docker compose pull
docker compose up -d

Этот проект автоматически обновит любые базы данных или другие требования, так что вам не придется следовать каким-либо безумным инструкциям. Эти шаги выше извлекут последние обновления и воссоздадут контейнеры docker.

Заключение

Nginx Proxy Manager представляет собой мощный инструмент для управления обратным прокси-сервером, который совмещает в себе простоту использования и гибкость настройки. Его главные отличия — это интуитивно понятный веб-интерфейс, автоматическая работа с SSL-сертификатами и поддержка множества доменов. С легкой установкой и минимальной кривой обучения, это идеальное решение для пользователей, которым нужно быстро и эффективно управлять своими прокси-серверами на базе Nginx.