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命令列表里面