본문으로 바로가기

Docker Network 트러블 슈팅

category 나의 주니어 개발 일기/Docker(도커) 2023. 12. 30. 17:24
728x90
반응형
SMALL

Docker Network 트러블 슈팅

도커 네트워크에는 bridge , host, container, none 4가지가 존재한다.

아무 설정도 적용하지 않았다면 defaultbridge 이다.

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