Docker Network: различия между версиями

Материал из Iknow
Перейти к навигации Перейти к поиску
Строка 33: Строка 33:
  
 
В цьому типі контейнери та хост можуть мати з'єднання між собою, вони використовують для цього IP адресу хоста.
 
В цьому типі контейнери та хост можуть мати з'єднання між собою, вони використовують для цього IP адресу хоста.
 +
 +
  В цьому типу може бути тільки одна мережа.
  
 
==none==
 
==none==

Версия 15:58, 23 января 2024

Docker Bridge

За замовчуванням створюється мережа цього типу. Треба пробросувати порти в цьому типу мережі якщо треба доступ зовні (параметр -p 80:80). Також можна під'єднатися локально.

docker0: 172.17.0.0/16

docker run nginx -p 80:80

В даному типі контейнери можуть мати зв'язок тільки через IP адреси, яки видаються через dhcp докером.

Можливо створити мережу. Це робиться так:

   docker network create --drive bridge NETNAME, де: 
   --drive - це тип мережі, в даному випадку це тип BRIDGE
   NAME - це назва мережі. 
   Вже є мережа з назвою "default" вона створюється автоматично, та контейнер буде в неї, якщо не вказати при запуску контейнера, ось так:
   docker run --net NAME nginx
   Якщо створювати контейнери не в default мережі, то контейнери можуть звертатися один до одного по імені (параметр --name при створювані). 
   Однак між собою різні мережі не можуть мати зв'язок. Звісно якщо не робити його якимось сторонніми методами.

Docker Host

В цьому типу, контейнер отримує IP адресу хоста на якому він запускається. Треба указати тип мережі --network=host

Для цього типу треба указати параметр --network=host

docker run nginx --network=host

Створити мережу цього типу можливо так: docker network create --drive host NETNAME.

В цьому типі контейнери та хост можуть мати з'єднання між собою, вони використовують для цього IP адресу хоста.

 В цьому типу може бути тільки одна мережа.

none

В цьому випадку не буде у контейнера мережевого інтерфейсу. Під'єднатися можливо тільки локально (параметр --it). docker run nginx --network=host

macvlan

В цьому типу у кожного контейнера свої мак адреси. IP адреси в цих контейнерах будуть унікальні для кожного контейнера.

ipvlan

В цьому типу у кожного контейнера буде один і той же MAC адрес, а IP адреси контейнерів будуть - різні.

overlay

Подивитись які є мережі в Docker

  docker network ls