Параметр
-p
команды docker run
связывает порты между хостом и контейнером (см. документы ), и его использование в большинстве случаев следующее:
docker run <other options> \
-p <port on the host>:<port in the container> \
<my_image> <args>
Что касается вашего примера: кажется, что для запуска образа необходим аргумент (порт в контейнере). Давайте выберем 8080
например (это означает, что порт 8080
будет использоваться приложением внутри контейнера).
Если вы хотите получить к нему доступ непосредственно на вашем хосте (через localhost
), вам следует привязать порт 8080
(в контейнере, который мы выбрали ранее) к любому доступному порту на вашем хосте (скажем, * 1014). *), вот так:
docker run \
-p 8081:8080 \
omerio/graphviz-server 8080
Теперь вы сможете получить доступ к приложению (порт 8080
приложения, запущенного в контейнере) с вашего хоста через localhost:8081
.