728x90
반응형
SMALL
Docker Network 트러블 슈팅
도커 네트워크에는 bridge , host, container, none
4가지가 존재한다.
아무 설정도 적용하지 않았다면 default
는 bridge
이다.
brigde의 할당된 아이피 대역대를 확인해보면 172.17.0.x
이다

문제점
나는 배포서버에서 172.17.0.x
대역대의 아이피가 사용중이였고 그 사실을 몰랐었다.
당연히 도커 컨테이너를 인스턴스로 올렸고, 해당 컨테이너는 통신이 되지 않았다.
왜냐하면 도커 네트워크 설정을 따로 하지 않았기 때문에 default로 bridge
가 적용됬고 이미 사용중인 172.17.0.x
ip 대역대로 중첩 할당되었기 때문이다.
그럼 여기서는 방법이 2가지가 있다.
- bridge로 할당되는 ip 대역을 변경한다.
- host와 network를 공유하여 중첩 할당을 피한다.
나는 좀더 간편한 후자의 방법을 선택하였다.
아래는 docker-compose로 올린 컨테이너 이며
network_mode: "host"
해당 옵션만 compose
에서 적용하면 host
와 네트워크를 공유한다.
version: '3'
services:
asac-rabbitmq:
container_name: asac-rabbitmq
image: rabbitmq:management
restart: unless-stopped
network_mode: "host"
privilege: true
volumes:
- /apps/asac/dockerimages/rabbitmq:/var/lib/rabbitmq
ports:
- 1237:5672
- 9099:15672
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: admin

728x90
반응형
LIST