Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

복수개의 도커에 다양한 도메인이 할당되어 도커에 접근이 되어야하기때문에 , 라우팅을 잘 관리하는 것은 중요한요소입니다.

도메인 → 공유기 → 포트포워딩 → VMOS → PROXY → 도커 인스턴스

홈 네트워크라고 하면 위와같이 접근정책을 해야하며,  VMOS까지 라우터설정은 제공된 ISP(인터넷제공업체) or IDC(관리센터)등에 영향을 받습니다.


Rancher 에서 복수개의 컨테이너 관리를 할수 있지만,  도메인 규칙에따라 컨테이너에 연결하는 기능은 포함되어 있지않다있지않습니다.

로드 밸런싱이 포함하여 이러한 기능은 하드웨어 혹은 소프트웨어 레벨에서 처리할수 있으며  (  하드웨어 레벨 L5 , 소프트웨어 레벨 L7 으로 구분되기도 한다.) 

...

소규모 개발환경에서도 Proxy가 중요한 이유는 ,먼저 Proxy관리가 없는 환경을 생각해보자

  • 도메인 설정이 산발적으로 되어,그룹단위 개발환경의 전체 레이아웃을 볼수가 없다. -Bad
  • 개발 도메인 신청에서 적용까지 , 정책과 신청과정으로 개발보다 더 많이 걸리는 경우도 허다하게 경험하였다 빌드업까지 개발시간보다 더 긴시간이 사용됨 - Bad
  • 관리가 어렵다고 해서, 도메인 개발환경을 포기한 경우,  그냥 Ip:port기반으로 제공하고 Hostfile을 수정하여 Qa 환경을 셋팅하는것은 처음에는 유용한것같지만,가장 최악의 상황이된다. 통한 QA- Too Bad

...

Nginx Proxy Manager

  • 인입되는 도메인의 패턴(PROXY감지)에 따라 특정 IP로(도커 컨테이너) 유도 


Code Block
themeEmacs
version: '2'
services:
  nginx:
    image: jlesage/nginx-proxy-manager
    restart: always
    volumes:
      - /docker/appdata/nginx-proxy-manager:/config:rw
    ports:
      - 8080:8181/tcp
      - 8081:8080/tcp
    labels:
      io.rancher.scheduler.affinity:host_label: server=main
      io.rancher.container.hostname_override: container_name

...