Docker 네트워크 드라이버
| 드라이버 | 설명 | 사용 상황 |
|---|---|---|
bridge | 기본값, 호스트와 격리된 가상 네트워크 | 단일 호스트 내 컨테이너 통신 |
host | 호스트 네트워크 직접 사용 | 성능 최우선 |
none | 네트워크 완전 비활성화 | 완전 격리 필요 시 |
overlay | 멀티 호스트 네트워크 | Docker Swarm |
기본 네트워크 명령어
Bash
docker network ls
docker network inspect bridge
docker network create mynet
docker network create \
--driver bridge \
--subnet 172.20.0.0/16 \
--gateway 172.20.0.1 \
mynet
docker network connect mynet container1
docker network disconnect mynet container1사용자 정의 bridge 네트워크 (권장)
Bash
docker network create app-net
docker run -d --name db --network app-net postgres:16
docker run -d --name backend --network app-net \
-e DB_HOST=db \
myapp:latestCompose 네트워크 설정
YAML
services:
nginx:
image: nginx:alpine
ports:
- "80:80"
networks:
- frontend
app:
build: .
networks:
- frontend
- backend
db:
image: postgres:16
networks:
- backend
networks:
frontend:
backend:
internal: true포트 매핑
Bash
docker run -p 8080:80 nginx
docker run -p 127.0.0.1:8080:80 nginx # localhost만 노출
docker port container1디버깅
Bash
docker exec -it myapp sh
# nslookup db
# curl http://db:5432
docker inspect --format '{{.NetworkSettings.IPAddress}}' mycontainer편집 안내 · Editorial Note
이 가이드는 AI 도구를 활용해 초안을 구성하고 사람이 명령어·문맥을 검토해 발행했습니다. 운영체제와 도구 버전에 따라 결과가 달라질 수 있으므로 적용 전 공식 문서를 함께 확인하세요. 오류를 발견하시면 이메일로 제보해 주세요.
관련 공식 문서Docker 공식 문서 ↗
질문 & 답변 (Q&A)
이 가이드에 대해 궁금한 점을 질문해보세요. 확인 후 답변드립니다.