Да, вы читаете название правильно, и это то, что вы думаете. Если у вас есть минимальные знания о Docker, вы наверняка прописали знаменитую команду Docker Docker-Compose up
, брось его с .yaml
Файл, группировка Nginx image вместе с вашим Изображение приложения И у вас есть запущенный сервер. Конечно, остались некоторые конфигурации, чтобы сделать для машины, чтобы начать получать запросы от внешнего мира, но мы будем сосредоточиться на том, как получить двигатель, работающий внутри.
Что мы до?
Хорошо, вот вот что мы готовы, у нас есть веб-приложение, и мы хотим развернуть и обслуживать всю настройку, без проблем с одним щелчком мыши ( Отказ от ответственности: не в том числе, чтобы настроить настройку 😄). Как вы уже можете знать, чтобы иметь возможность получить доступ к приложению снаружи, нам нужен «Веб-сервер» Это может быть любой из (но не ограничена) следующим:
- Apache server.
- IIS
- Nginx (мы выберем этот)
Я собираюсь начать, давая вам краткое введение о Nginx И что это может сделать.
Что такое Nginx.
«NGINX — это веб-сервер, который также может использоваться в качестве обратного прокси, балансировщик нагрузки, почтовый прокси и кеш HTTP. «Игорь Сейсоев, создатель программного обеспечения, публично выпустил его в 2004 году и с его лицензию с открытым исходным кодом , вы, безусловно, можете использовать его бесплатно. В последнем абзаце я представил эту мирную статью пару новых терминов, которые вы либо не слышали ранее, либо слышали о них, не зная, что они на самом деле. Давайте обсудим некоторые из них.
Прокси
Прокси в основном является сервером, который Запросы от имени клиента (вы) Другими словами, веб-сервер назначения (например, Google.com) получит запрос не от вас, но с прокси-сервера вы используете. Я мог бы подумать о нескольких причинах, почему любая настройка сети выиграет от этой технологии.
Так каковы преимущества прокси?
- На вершине моей головы прокси мгновенно Скрыть свой IP-адрес , держат вас анонимным к приемной цели.
- Прокси также может кэшировать результаты ваших запросов, поэтому вместо того, чтобы путешествовать весь путь к серверу назначения, прокси в середине будет идти: «Хммм, я думаю, вы попросили погоду 5 минут назад, здесь вы идете, Он все еще горит горячий на 42 °, не нужно спрашивать Google снова. «
Имейте в виду, nginx не Прокси, читайте на …
Обратный прокси
Обратный прокси с другой стороны Наоборот прокси. В случае прокси, сервер не знает клиента, но в случае обратного прокси-сервера клиент не знает сервера, он в основном наоборот.
Так каковы преимущества прокси?
- Балансировка нагрузки , который можно настроить несколькими способами убедиться, что запущенные серверы будут распространять задачи, чтобы служить большему количеству пользователей. В предыдущем примере у Google имели два сервера, но только один ответил, другой мог служить другому пользователю, или он мог бы пронзать, это не имеет значения, пока запрос был подан.
- Кэширование работает наоборот тоже. Обратный прокси Google поступит: «Хммм, я думаю, вы только что спросили о погоде, нет, по-прежнему 42 °». даже не передавая запрос на фактические серверы Google.
Таким образом, главный улов вот что (для большинства сценариев) A Прокси устанавливается и используется клиентом тогда как . Обратный прокси устанавливается и используется сервером .
Прежде чем мы продолжим, я хочу отметить, что Хусейн Насер сделал потрясающее видео Объясняя различия между проксими и обратными прокси в интуитивно понятном порядке, не забудьте быстро посмотреть его для еще лучшего понимания.
Последняя архитектура мы после
После этого краткое вступление, я думаю, что мы сейчас понимаем, что nginx будет сервером выбора, а что бесплатно с nginx вы спрашиваете? Да, Балансировка нагрузки Отказ Итак, позвольте мне попытаться захватить архитектуру, которую мы будем идти в следующей диаграмме:
Как вы уже выяснились, архитектура содержит в основном 3 основных компонента:
- Клиент (конечный пользователь)
- База данных (размещена где-то нам не волнует наш контекст)
Наше Backeng Server :
- Это будет работать 3 контейнера докеров,
- Каждый имеет экземпляр нашего приложения Backenn
- Каждое приложение доступно через внутренний номер порта
- Каждый имеет экземпляр нашего приложения Backenn
- Мы также будем работать Nginx Server Указывая на каждом из 3 экземпляров в попытке получить доступ к ним через сбалансированное нагрузку (мы обсудим несколько подходов) снаружи машины Linux.
- Это будет работать 3 контейнера докеров,
В предстоящей статье я подробно расскажу о NGINX, а как правильно настроить его нашим потребностям. Увидимся на другой стороне мира 🚀😄.
Оригинал: «https://dev.to/paulafahmy/one-tap-deployments-with-nginx-and-docker-introduction-to-reverse-proxies-156c»