Как настроить привязку порта для контейнера NGINX на порту 8080

DockerDockerBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом руководстве мы рассмотрим процесс настройки привязки порта для контейнера NGINX на порту 8080 с использованием Docker. По завершении этого руководства вы будете ясно понимать, как настроить и проверить развертывание контейнера NGINX.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker(("Docker")) -.-> docker/DockerfileGroup(["Dockerfile"]) docker/ContainerOperationsGroup -.-> docker/run("Run a Container") docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/ps("List Running Containers") docker/ContainerOperationsGroup -.-> docker/start("Start Container") docker/ContainerOperationsGroup -.-> docker/stop("Stop Container") docker/ContainerOperationsGroup -.-> docker/port("List Container Ports") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") docker/ImageOperationsGroup -.-> docker/images("List Images") docker/DockerfileGroup -.-> docker/build("Build Image from Dockerfile") subgraph Lab Skills docker/run -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/ls -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/ps -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/start -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/stop -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/port -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/pull -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/images -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} docker/build -.-> lab-416178{{"Как настроить привязку порта для контейнера NGINX на порту 8080"}} end

Введение в Docker и NGINX

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

Что такое Docker?

Docker — это контейнеризационная платформа, которая позволяет разработчикам упаковать свои приложения и зависимости в один переносимый контейнер. Затем этот контейнер можно легко развернуть и запустить на любой системе, на которой установлен Docker, независимо от базовой операционной системы или инфраструктуры.

Что такое NGINX?

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

Почему использовать NGINX с Docker?

Комбинация Docker и NGINX может стать мощным решением для развертывания и управления веб-приложениями. Запуская NGINX в контейнере Docker, вы можете легко масштабировать, управлять и развертывать свое веб-приложение в разных средах, используя при этом производительность и гибкость NGINX.

graph LR A[Client] --> B[NGINX Container] B --> C[Application Container] C --> D[Database Container]

Установка Docker и NGINX

Для начала вам нужно установить Docker на своей системе. Вы можете установить Docker на Ubuntu 22.04, используя следующие команды:

sudo apt-get update
sudo apt-get install -y docker.io

После установки Docker вы можете скачать Docker-образ NGINX из реестра Docker Hub:

docker pull nginx

Теперь вы готовы начать настраивать контейнер NGINX и настраивать привязку портов.

Настройка привязки порта контейнера NGINX

Для настройки привязки порта для контейнера NGINX вы можете использовать флаг -p или --publish при запуске контейнера Docker. Этот флаг позволяет вам сопоставить порт на хост-системе с портом внутри контейнера.

Запуск контейнера NGINX с привязкой порта

Для запуска контейнера NGINX и привязки его к порту 8080 на хост-системе вы можете использовать следующую команду:

docker run -d -p 8080:80 --name my-nginx nginx

В этой команде:

  • -d: запускает контейнер в отсоединенном режиме, то есть он работает в фоновом режиме.
  • -p 8080:80: сопоставляет порт 8080 на хост-системе с портом 80 внутри контейнера.
  • --name my-nginx: присваивает контейнеру имя "my-nginx".
  • nginx: указывает Docker-образ NGINX, который нужно использовать.

Проверка привязки порта

Вы можете проверить, что привязка порта работает правильно, проверив запущенные контейнеры и обратившись к веб-серверу NGINX из веб-браузера.

Для вывода списка запущенных контейнеров используйте следующую команду:

docker ps

В выводе должна отобразиться информация о только что созданном контейнере NGINX с данными о сопоставлении портов.

Для доступа к веб-серверу NGINX откройте веб-браузер и перейдите по адресу http://localhost:8080. Вы должны увидеть стандартную приветственную страницу NGINX.

graph LR A[Host System] -- Port 8080 --> B[NGINX Container] B -- Port 80 --> C[NGINX Web Server]

Настроив привязку порта, вы теперь можете получить доступ к веб-серверу NGINX, работающему внутри контейнера Docker, с хост-системы.

Проверка настройки контейнера NGINX

Для проверки правильной настройки контейнера NGINX вы можете выполнить следующие действия:

Проверка запущенных контейнеров

Сначала вы можете вывести список запущенных контейнеров на своей системе, используя команду docker ps:

docker ps

В выводе должна отобразиться информация о ранее созданном контейнере NGINX, а также данные о сопоставлении портов.

Доступ к веб-серверу NGINX

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

Проверка журналов NGINX

Вы также можете проверить журналы контейнера NGINX, чтобы убедиться, что он работает без проблем. Используйте следующую команду для просмотра журналов:

docker logs my-nginx

В выводе должны отобразиться журналы сервера NGINX, которые вы можете использовать для устранения возможных проблем.

Проверка контейнера

Если вам нужна более детальная информация о контейнере NGINX, вы можете использовать команду docker inspect:

docker inspect my-nginx

В результате будет выведен отчет в формате JSON с различными данными о контейнере, такими как его настройки, сетевые параметры и использование ресурсов.

Выполнив эти действия, вы можете убедиться, что контейнер NGINX настроен правильно и доступен с хост-системы.

graph LR A[Host System] -- Access NGINX --> B[NGINX Container] B -- Check Logs --> C[NGINX Logs] B -- Inspect Container --> D[Container Details]

Резюме

В этом руководстве был представлен комплексный гайд по настройке привязки порта для контейнера NGINX на порту 8080 с использованием Docker. Вы узнали, как настроить контейнер NGINX и проверить его успешное развертывание. С этими знаниями вы теперь можете уверенно управлять и развертывать контейнеры NGINX в своей инфраструктуре на основе Docker.