docker使用 p引數對映埠失敗

2021-10-13 11:07:46 字數 1023 閱讀 7122

使用docker -p 引數將容器的埠對映到宿主機上。如:

docker run  -d -p 30080:80 nginx:latest

可以看到宿主機上的埠已經對映完成了,也啟動了。

root@workstation:~# netstat -tulpn|grep 30080

tcp6 0 0 :::30080 :::* listen 31189/docker-proxy

但是通過curl 127.0.0.1:30080會報錯,telnet 127.0.0.1 30080也沒有反應。

docker安裝以後會虛擬出來乙個docker0的網絡卡,centos 7.2重啟以後這個網絡卡的模式有點問題,需要將docker0設定為混雜模式,命令如下:

ifconfig docker0 promisc
檢查混雜模式是否設定成功 , promisc,multicast>

root@workstation:~# ifconfig docker0

docker0: flags=4355mtu 1500

inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255

inet6 fe80::42:52ff:fe10:1151 prefixlen 64 scopeid 0x20ether 02:42:52:10:11:51 txqueuelen 0 (乙太網)

rx packets 1424 bytes 211672 (211.6 kb)

rx errors 0 dropped 0 overruns 0 frame 0

tx packets 1685 bytes 9343004 (9.3 mb)

tx errors 0 dropped 0 overruns 0 carrier 0 collisions 0

修改docker對映埠

提供一種簡單的修改docker容器對映埠的方法,適用於centos系統。方法是修改容器的hostconfig.json檔案。有個小坑,這裡必須在docker服務停止的狀態下進行修改,否則修改hostconfig.json檔案裡的埠會失效。第一步 關閉docker服務,我的系統是centos6.9,指...

docker 追加docker容器埠對映的方法

docker run可以指定埠對映,但是容器一旦生成,就沒有乙個命令可以直接修改。通常間接的辦法是,儲存映象,再建立乙個新的容器,在建立時指定新的埠對映。但這樣太麻煩了。現在有新方案來解決掉 操作步驟 1 檢視容器 docker ps a2 停止容器 docker stop f5033 停止dock...

Docker更改容器埠對映

一般情況下是不可以改變容器的埠對映的,只有通過run命令指定。如果想要不改變容器內容和配置的情況下更改埠對映只有先停止,然後將容器打包成映象,然後在執行新的映象的時候指定新的埠對映。先停止容器 docker stop containera 將容器commit成為乙個映象 docker commit ...