2016-09-25 4 views
2

도커 컨테이너 내에서 실행되는 UDP 포트를 동적으로 여는 응용 프로그램을 가정 할 때 이러한 포트를 외부 (호스트) 포트에 노출 시키거나 바인딩하는 방법은 무엇입니까?도커 컨테이너 내에 동적으로 열린 포트 노출

이것은 아마도 here으로 제기 된 질문과 같지만 대답 (--net=host 사용)은 동일한 포트를 호스트에 노출시키는 여러 컨테이너 인스턴스 실행의 확장 성을 제한합니다.

호스트가있는 컨테이너에서 동적으로 열린 포트의 일대일 매핑을 구성하는 방법이 있습니까?

포트 45199/udp이 컨테이너 내부에서 열리고 호스트의 포트 45199/udp에 노출됩니까?

답변

3

아마도 컨테이너 호스트에서 미리보기 포트를 자동으로 찾을 수있는 방법을 찾을 수 있지만 호스트 네트워킹 (여러 컨테이너 인스턴스의 경우 가능한 포트 충돌)과 같은 문제가 발생합니다. 시나리오 최선의 방법에서 아마

일부 포트 범위 즉 노출됩니다

docker run --expose=7000-8000 ... 

을 그리고 기본 브리지 네트워크의 경우에는 IP 주소로 컨테이너를 참조하십시오 (당신은 고정 표시기를 검사하여 컨테이너 IP해야합니다) 또는 사용자 정의 네트워크의 경우 이름으로 (https://docs.docker.com/engine/userguide/networking/configure-dns/).

+0

감사합니다. 다른 사람이 나에게 대답 [여기] (https://forums.docker.com/t/exposing-dynamically-opened-ports-inside-docker-container/22566)도 주었다. – Griffin