2013-06-06 13 views
10

Chcę przypisać kontenerowi port, aby po każdym ponownym uruchomieniu kontenera otrzymał ten sam port.Jak przypisać jako port statyczny do kontenera?

Przykład: Mam pojemnik, który zawiera w sobie Apache. Apache działa na porcie 80 wewnątrz kontenera. Teraz, po uruchomieniu kontenera, okno dokowane przypisuje port hosta do portu kontenera, na przykład: 49154 -> 80. Ale port hosta zmienia się po ponownym uruchomieniu, w zależności od liczby uruchomionych kontenerów. Próbowałem określić port w pliku config.json kontenera, ale został on nadpisany.

Czy można określić port hosta ręcznie?

góry dzięki i pozdrawiam, Chris

Odpowiedz

3

Po uruchomieniu docker, można użyć parametru '-p'.

docker run -p 80 yourimage apache2 zrobi to, co aktualnie masz.

Teraz można określić, ':', aby ten port statyczną:

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

Jeśli używasz Dockerfile z instrukcją EXPOSE, to samo :)

+2

Dzięki za odpowiedź. Łatwiej byłoby określić pełne mapowanie, więc coś w stylu: doker uruchomić -p 49159: 80 , aby określić, że port hosta jest 49159, który jest podłączony do portu 80 kontenera. Czy to jest możliwe? Dzięki! –

+0

To nie jest jeszcze możliwe, ale możesz otworzyć problem na github, aby zapytać o tę funkcję :) – creack

+3

To jest teraz możliwe. –

Powiązane problemy