2014-09-04 61 views
1

我們可以創建一個新的容器和定義泊塢窗運行命令你的應用程序端口像如果容器已創建並正在運行,如何使用docker將主機端口分配給容器端口?

sudo docker run -d -p 5000:5000 training/webapp python app.py 

sudo docker run -d -P training/webapp python app.py 

但是,如果有人忘了指定的搬運工運行-p或-P選項命令?容器被創建並在本地運行應用程序。現在我怎樣才能將應用程序在本地容器中運行的端口分配給我的Ubuntu主機的端口? 請幫忙。 謝謝。

+0

[在活Docker容器上暴露端口]的可能重複(http://stackoverflow.com/questions/19897743/exposing-a-port-on-a-live-docker-container) – Hardy 2014-09-05 13:03:49

回答

0

短:你不能。您需要停止容器(或不要),並使用適當的參數啓動一個新容器。

Docker創建一個本地代理併爲適當的NAT設置iptables。如果你真的不能啓動一個新的容器,你可以手動設置iptables並啓動一個socat。您可以查看Docker代碼的網絡部分以獲取更多信息。