Docker Network
Содержание
Docker Bridge
За замовчуванням створюється мережа цього типу. Треба пробросувати порти в цьому типу мережі якщо треба доступ зовні (параметр -p 80:80). Також можна під'єднатися локально.
docker0: 172.16.0.0/12
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