Junior — Middle
Обяснете как се осъществява мрежовото взаимодействие вътре в Docker контейнер и как той се свързва с външните мрежи.
sobes.tech AI
Отговор от AI
В Docker контейнер мрежовата комуникация се организира чрез виртуални мрежи, които Docker създава и управлява.
Основни точки:
- Всеки контейнер получава виртуален мрежов интерфейс (обикновено eth0) с IP адрес в Docker мрежата.
- По подразбиране Docker създава мрежа с име bridge, към която се свързват контейнерите.
- Контейнерите в една и съща мрежа могат да комуникират помежду си чрез IP или име на контейнера.
- За достъп до външни мрежи (интернет), контейнерът използва NAT през хост машината.
- Могат да се създават потребителски мрежи (bridge, overlay) за изолация и настройка.
- Портовете на контейнера могат да бъдат пренасочени към хоста, за да могат външни приложения да се свързват към услугите вътре в контейнера.
Пример за стартиране на контейнер с пренасочване на порт:
docker run -d -p 8080:80 nginx
Тук порт 80 вътре в контейнера е достъпен на порт 8080 на хоста.