뭐든 즐기면서 ;)

Docker network 설정 본문

서버/Docker

Docker network 설정

Tada.*+ 2022. 10. 6. 21:41
728x90

생성되어 있는 docker netwokr 목록 확인

> docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
fb94083c881d   bridge    bridge    local
135b46ee40c4   host      host      local
5dc9a048f099   none      null      local

Docker 네트워크는 bridge, host, overlay 등 목적에 따라 다양한 종류의 네트워크 드라이버(driver)를 지원하는데요.

  • bridge 네트워크는 하나의 호스트 컴퓨터 내에서 여러 컨테이너들이 서로 소통할 수 있도록 해줍니다.
  • host 네트워크는 컨터이너를 호스트 컴퓨터와 동일한 네트워크에서 컨테이너를 돌리기 위해서 사용됩니다.
  • overlay 네트워크는 여러 호스트에 분산되어 돌아가는 컨테이너들 간에 네트워킹을 위해서 사용됩니다.

 

network 생성

> docker network create [생성할 network 명칭]

default 값인 bridge 형태의 network가 생성됨.

생성한 network 상세 정보 확인

> docker network inspect [생성한 network명]

Containers 부분을 보면 빈 값으로, 연결된 container가 없음을 뜻합니다.

생성한 network에 container를 연결해 보도록 하겠습니다.

container network 연결하기

docker network connect <network명> <container ID || 명>

* docker run을 할 때 --network 옵션 없이 container를 실행하면, 기본 적으로 bridge 네트워크에 연결되도록 되어 있습니다. 하나의 네트워크에만 연결되도록 bridge 네트워크에서의 연결을 끊도록 하겠습니다.

container network 연결 끊기

> docker network disconnect bridge <container ID || 명>

연결 확인하기

> docker exec -it <container A> ping <container B>

* OCI runtime exec failed: exec failed: unable to start container process .. Error발생 시. docker container에 ping명령어가 설치되지 않아 생기는 에러입니다. 그러므로 container 진입 후 ping명령어를 설치해 주어야 합니다.

> docker exec -it <container> /bin/sh

# apt-get update
# apt-get install inetutils-ping

 

* 불필요한 docker network 정리하는 방법

> docker network prune

 

728x90
Comments