2013-06-06 2 views
10

컨테이너를 다시 시작할 때마다 동일한 포트를 갖도록 컨테이너에 포트를 할당하려고합니다.컨테이너에 고정 포트로 할당하는 방법은 무엇입니까?

예 : 컨테이너가 있는데 컨테이너가 있습니다. Apache는 컨테이너 내부의 포트 80에서 실행됩니다. 이제 컨테이너를 시작한 후 docker가 호스트 포트를 컨테이너 포트에 할당합니다 (예 : 49154 -> 80). 호스트 포트는 실행중인 컨테이너 수에 따라 다시 시작한 후에 변경됩니다. 컨테이너의 config.json 파일에 포트를 지정하려고했지만 덮어 씁니다.

수동으로 호스트 포트를 지정할 수 있습니까? 사전 및 안부에서

감사합니다, 크리스

답변

3

당신이 고정 표시기를 시작하면, 당신은 '-p'매개 변수를 사용할 수 있습니다.

docker run -p 80 yourimage apache2은 현재 가지고있는 것을 처리 할 것입니다.

지금, 당신은 지정할 수 있습니다 ':'정적이 포트를 만들기 위해 :

docker run -p :80 -p :443 yourimage apache2

당신이 EXPOSE 명령과 함께 Dockerfile를 사용하는 경우, 그것은 같은 일 :)입니다

+2

답변 해 주셔서 감사합니다. 완전한 맵핑을 지정하는 것이 더 쉽습니다. docker run -p 49159 : 80 호스트 포트가 컨테이너의 포트 80에 연결된 49159임을 지정하는 것이 더 쉽습니다. 그게 가능하니? 감사! –

+0

아직 가능하지 않지만이 기능을 요청하려면 github에서 문제를 열어보십시오. – creack

+3

이제 가능합니다. –

관련 문제