docker容器是由鏡像變化而來的,一般屬性在run的時候就已經設立了。
我看到網上有很多demo可以做到。
比如修改配置文件,比如重新打包成鏡像然後run的時候添加。
下面有一種臨時的方法:
docker inspect 容器id | grep IPAddress
該命令獲取了docker容器的在宿主機裏的真實ip
然後使用宿主機的端口轉發功能iptables
下面例子就是將宿主機的8080端口轉發到6c容器的80端口
[root@localhost ~]# docker inspect 6c19dfeaf227 | grep IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
[root@localhost ~]#iptables -t nat -A DOCKER -p tcp --dport 8080 -j DNAT --to-destination 172.17.0.2:80
注意這個方法並不是docker的命令,所以他擴展出的端口不在docker port命令列表裏面