謝邀。建議提問的人,都把問題描述清楚。
問題推斷
沒怎麼看懂。問題沒有上下文,沒有具體描述。
是要獲取ipv4地址嗎?
還是監聽ipv4的地址?
描述清楚問題有助於解決你的問題
是要獲取ipv4地址嗎?
假如是,那麼一個命令即可獲取所有容器名稱及其IP地址:
docker inspect -f ‘{{。Name}} - {{。NetworkSettings。IPAddress }}’ $(docker ps -aq)
還是監聽ipv4的地址?
docker run -p
假如你enable了Ipv6 記得:net。ipv6。conf。all。forwarding=1
歡迎關注,解鎖更多,共同提高!
不請自來。
docker容器啟動之後, docker系統會自動為該容器分配一個172。17的IP地址,這個地址是私有地址,容器外部(宿主機)是沒辦法訪問的。但在容器啟動的時候,透過引數-p可以做埠對映,將容器的埠對映到宿主機的某個埠上,就可以在正常訪問了。
docker run ——name dockerfly ——restart=always -d -v /var/run/docker。sock:/var/run/docker。sock -p 2735:2735 -p 28083:28083 helyho/dockerfly
如:dockerfly容器在啟動的時候透過引數-p做了埠對映。
docker ps |grep dockerfly
比如:dockerfly容器(docker WEB管理介面)
docker inspect 6f9601f0f054 | grep IPAddress
我們看到:dockerfly容器的IP是172。17。2。3。
然後,再看docker容器與宿主機埠對映關係。
docker port 6f9601f0f054
dockerfly容器上的2735和28083兩個埠對映到宿主機的2735和28083兩個埠上。
這樣,就可以在外面訪問容器中的應用了,可以用curl命令測試。
curl http://192。168。0。180:28083