Docker Bridge 네트워크 생성하는 방법
Docker를 사용하다 보면 컨테이너 간 통신을 보다 명확하게 분리하거나 특정 서비스(예: Elasticsearch 클러스터 등)를 위한 전용 네트워크가 필요한 경우가 많습니다. 이 글에서는 Docker의 기본 bridge 네트워크 구조를 살펴보고 사용자 정의 bridge 네트워크를 생성·확인하는 방법입니다.
1. Docker 네트워크 개요
Docker는 컨테이너 간 통신을 위해 여러 종류의 네트워크 드라이버를 제공합니다.
- bridge : 단일 Docker 호스트 내 컨테이너 간 통신에 사용 (기본값)
- host : 호스트 네트워크를 컨테이너와 공유
- none : 네트워크 기능 비활성화
2. 현재 Docker 네트워크 목록 확인
현재 Docker에 어떤 네트워크가 존재하는지 확인해 보겠습니다.
docker network ls
NETWORK ID NAME DRIVER SCOPE
6796a63d6574 bridge bridge local
3edc63ab63b3 host host local
54bcfe43a226 none null local
- bridge: Docker 설치 시 기본으로 생성되는 기본 bridge 네트워크
- host, none: 특수 목적의 네트워크
3. 기본 bridge 네트워크 상세 정보 확인
docker network inspect NETWORK_ID
docker network inspect 6796a63d6574
[
{
"Name": "bridge",
"Id": "6796a63d657459c976414bb6e85be17a6772ac4c23e45b2dd3af180ebf9f8446",
"Created": "2021-11-15T16:05:18.7966082+09:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.17.0.0/16",
"Gateway": "172.17.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {
"com.docker.network.bridge.default_bridge": "true",
"com.docker.network.bridge.enable_icc": "true",
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
"com.docker.network.bridge.name": "docker0",
"com.docker.network.driver.mtu": "1500"
},
"Labels": {}
}
]
- Subnet : 172.17.0.0/16
- Gateway : 172.17.0.1
- Bridge 인터페이스 이름 : docker0
- 컨테이너 간 통신(ICC) 및 IP Masquerade 활성화
이는 Docker가 기본적으로 제공하는 네트워크 대역이며 모든 컨테이너가 이 네트워크에 연결되면 하나의 큰 네트워크를 공유하게 됩니다.
4. 사용자 정의 bridge 네트워크 생성
사용자 정의 bridge 네트워크를 생성해 보겠습니다.
docker network create \
--driver=bridge \
--subnet=172.13.0.0/16 \
--gateway=172.13.0.1 \
elastic-cluster-net
ef600adb3d4e73e68d99177fe2f937defb97630c11118574d802f8f1098fb536
5. 생성된 네트워크 확인
네트워크 목록을 확인해 보겠습니다.
docker network ls
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
6796a63d6574 bridge bridge local
ef600adb3d4e elastic-cluster-net bridge local
3edc63ab63b3 host host local
54bcfe43a226 none null local
elastic-cluster-net 이 정상적으로 추가된 것을 확인할 수 있습니다.
6. 사용자 정의 bridge 네트워크 상세 정보 확인
생성한 네트워크의 상세 설정을 확인합니다.
docker network inspect elastic-cluster-net
[
{
"Name": "elastic-cluster-net",
"Id": "ef600adb3d4e73e68d99177fe2f937defb97630c11118574d802f8f1098fb536",
"Created": "2021-11-17T10:53:17.140983353+09:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "172.13.0.0/16",
"Gateway": "172.13.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {},
"Labels": {}
}
]
- Subnet : 172.13.0.0/16
- Gateway : 172.13.0.1
- 기본 bridge 네트워크와 독립된 IP 대역 사용
- 현재 연결된 컨테이너 없음 (Containers: {})
참고URL
- dockerdocs : docker network create
도커 네트워크 생성
'리눅스' 카테고리의 다른 글
| [draft] 기술적 취약점 분석 평가 상세 가이드 (0) | 2026.01.24 |
|---|---|
| [draft] CentOS 7에서 ISO 이미지를 생성하기 (0) | 2026.01.24 |
| [draft] 우분투 22.04에서 MySQL 8을 바이너리 파일로 설치하는 방법 (0) | 2026.01.22 |
| [draft] Docker로 Swagger UI를 실행하여 REST API를 테스트하는 방법 (0) | 2026.01.22 |
| [draft] systemd의 로깅 설정을 변경하기 (0) | 2026.01.22 |