DevOps/Docker

[Docker] Docker Network 종류

yubi5050 2022. 8. 17. 11:32

Docker Container Network 특징

컨테이너는 subnet 172.17.0.0/16 기반의 내부 IP를 순차적으로 할당함

컨테이너는 기본적으로 loop back과 eth 인터페이스를 가진다.

컨테이너 생성시 docker daemon에서는 veth(virtual eth) 가상 네트워크 인터페이스를 만들고 각 컨테이너의 eth0과 연결

컨테이너 생성시 veth들은 docker0 브릿지에 자동 바인딩 되어 외부와의 통신이 가능

도커 네트워크 구조

 

Docker Network 종류 - 브릿지 네트워크

기본적인 네트워크 세팅 ( docker - veth / veth - eth0 연결 등) 구조, 사용자가 임의의 브릿지 생성도 가능

 

브릿지 네트워크 생성 및 연결

# 브릿지 생성
docker network create -drive bridge mybridge

# 브릿지 연결
docker run -it -name <container_name> --net mybridge

 

Docker Network 종류 - Host 네트워크

호스트의 네트워크 환경 공유하는 구조

 

특징

  • 컨테이너가 독립적인 네트워크 영역을 갖지 않고 호스트와 네트워크 공유
  • 컨테이너들의 네트워크가 도커 호스트에서 따로 고립될 필요 없을 때 사용
# host network 설정
docker run –it –name network_host –net host Ubuntu : 14.04

 

Docker Network 종류 - 컨테이너 네트워크

다른 컨테이너 네트워크 환경을 공유

# host network 설정
docker run –it –name my_container –net container: network_container

 

Docker Network 종류 - 논 네트워크, 오버레이 네트워크

논 네트워크컨테이너의 모든 네트워크 비활성화

오버레이 네트워크 : 여러 도커 데몬에서 실행되는 컨테이너들을 한 네트워크로 묶음 (ex. Swarm과 같은 여러 컨테이너 관리 서비스 사용)