도커 네트워크도커 브릿지도커 bridgedocker networkdocker bridge

Docker Bridge 네트워크 가이드

KUKJIN LEE
KUKJIN LEE
2024년 8월 12일
165

Bridge 네트워크란?

Bridge 네트워크는 Docker의 기본 네트워크 드라이버입니다. 이 네트워크는 같은 Docker 호스트 내에서 실행되는 컨테이너들이 서로 통신할 수 있게 해주는 소프트웨어 브리지를 생성합니다.

 

주요 특징:

  • 컨테이너 간 격리 제공

  • 호스트와 컨테이너 간 통신 가능

  • 포트 매핑을 통한 외부 접근 지원

 

Bridge 네트워크의 작동 원리

  1. 네트워크 생성: Docker는 호스트 시스템에 가상 브리지를 생성합니다.

  2. 컨테이너 연결: 각 컨테이너는 가상 이더넷(veth) 인터페이스를 통해 이 브리지에 연결됩니다.

  3. IP 할당: 컨테이너는 브리지 네트워크의 서브넷에서 IP 주소를 할당받습니다.

  4. NAT: 호스트의 IP 주소를 사용하여 외부 네트워크와 통신합니다.

 

기본 Bridge 네트워크 vs 사용자 정의 Bridge 네트워크

기본 Bridge 네트워크

  • 이름: docker0

  • 자동으로 생성됨

  • 모든 컨테이너가 기본적으로 연결됨

  • 컨테이너 간 IP 주소로만 통신 가능

 

사용자 정의 Bridge 네트워크

  • 수동으로 생성해야 함

  • 더 나은 격리와 제어 제공

  • 컨테이너 간 자동 DNS 확인 지원

  • 동적으로 컨테이너를 연결/분리 가능

 

Bridge 네트워크 사용하기

기본 Bridge 네트워크 사용

docker run -d --name my_container nginx

 

사용자 정의 Bridge 네트워크 생성 및 사용

# 네트워크 생성
docker network create my_custom_bridge

# 네트워크에 컨테이너 연결
docker run -d --name my_container --network my_custom_bridge nginx

# 기존 컨테이너를 네트워크에 연결
docker network connect my_custom_bridge existing_container

 

Bridge 네트워크 문제 해결

  1. 네트워크 정보 확인

docker network inspect bridge

 

  1. 컨테이너의 네트워크 설정 확인

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name

 

  1. 네트워크 연결 테스트

docker run --rm --network host nicolaka/netshoot ping container_name

 

Bridge 네트워크는 Docker 네트워킹의 기본이자 가장 널리 사용되는 옵션입니다.

관련 글

[SQL 입문] 필요한 데이터만 콕 집어 가져올 수 있는 WHERE 절

사용자는 테이블에 있는 모든 데이터를 다 보고 싶어 하지는 않습니다. 오히려 특정 항목에 대한 데이터만 가져오고 싶을 때가 훨씬 많습니다. 예를 들어, 어떤 사용자의 이메일이나 ID는 알고 있는데, 그 사람이 언제 우리 앱에 가입했는지 확인하고 싶다고 가정해 봅시다...

2026년 1월 27일10

SQL에서 SELECT란 무엇인가?

데이터베이스를 거대한 서류 보관함이라고 생각하면 됩니다. 보관함 안에는 수많은 데이터가 차곡차곡 쌓입니다. SELECT는 이 보관함에서 "내가 원하는 정보를 찾아줘!"라고 요청하는 명령어입니다. 이 과정을 전문 용어로 '쿼리(Query)'라고 부릅니다. &nbs...

2026년 1월 26일10

[SQL 기초] "언제 하나씩 다 넣어?" 데이터 한 번에 넣기

개발을 하다 보면 데이터베이스(DB)에 샘플 데이터를 대량으로 넣어야 할 때가 있습니다. 메뉴 100개를 추가해야 하는데 INSERT 문을 100번 쓰고 있다면? 너무 비효율적이죠! 오늘은 SQL에서 여러 데이터를 한 번에 넣는 '다중 삽입(Multiple Inse...

2026년 1월 21일13

SQL 데이터 삽입하기

데이터가 없는 데이터베이스는 연료 없는 로켓과 같습니다. 이제 'Missions' 테이블에 새로운 행(row)을 추가하는 방법을 알아보겠습니다. "삽입(Inserting)"은 '데이터 추가'를 의미합니다. 기존 Missions 테이블 ...

2026년 1월 20일12