2016-06-29 49 views
1

我是碼頭工人。我在tomcat服務器上安裝了spring-roo項目的圖像。爲什麼即使使用-P選項,主機也不會在Docker容器中創建Web應用程序?

docker run -P manojp1988/spring-roo 

以上圖片發佈到dockerhub。但我的問題是,我無法從我的主機訪問webapp。

CONTAINER ID  IMAGE     COMMAND     CREATED    STATUS    PORTS      NAMES 
b97ac7dd0a96  manojp1988/spring-roo "/bin/sh -c 'cd /git/" 15 seconds ago  Up 15 seconds  0.0.0.0:32778->5000/tcp elated_meitner 

http://localhost:32778/roo

即使我給-P我不能與Web應用程序連接。什麼可能是錯的?

回答

0

-P發佈到隨機端口。嘗試-p 5000:5000以確保容器中的端口5000映射到主機上的端口5000。

注意到你使用的是隨機端口,所以我正在修改我的答案。 使用--net=host啓動容器,以便可以從主機的IP訪問端口。

+0

我試過「碼頭運行-P 5000:5000 manojp1988/spring-roo」和「docker run -net = host manojp1988/spring-roo」但沒有工作。 你在你的機器上試過了嗎?我在MAC中使用docker應用程序。 – Manoj

+0

在我的答案錯誤,應該是小寫'-p' – stacksonstacks

+0

我試過,即使..不工作。 – Manoj

0

我做的一件事是我已經下載了tomcat鏡像,並且我配置了頂層。所以,無論何時我給-P,主機端口連接到容器中的8080。 Tomcat還在8080中部署了我的應用程序,因此它正在工作。

此前我已經使用maven鏡像並使用了嵌入式tomcat插件。所以當我連接我的主機時,主機端口總是映射到5000.不知道這是什麼原因。

相關問題