Docker端口映射是指将容器内应用的服务端口映射到本机宿主机器。当要在宿主机外部访问Docker内部应用时,需要对容器内应用端口进行映射。
一、容器启动时指定端口映射
容器运行时可以通过-p 或 -P参数指定端口映射。
1、-P随机映射
docker run时使用-P参数,Docker会随机选择一个宿主机端口映射到内部容器开发的网络端口
2、-p指定端口映射
使用-p参数时,可以指定映射的端口,并且在一个指定的端口上只能绑定一个容器,支持的格式有:
IP:HostPort:ContainerPort
IP:ContainerPort
HostPort:ContainerPort
如 docker run -it -p : nginx 会将本机8080端口映射到容器的80端口
查看端口映射
使用docker port查看端口映射
docker port CONTAINER [PRIVATE_PORT[/PROTO]]
其中,CONTAINER为容器名字或容器ID
二、运行时添加/修改端口映射
方法1:
1、查看容器IP
docker inspect b8b398968a63 | grep IPAddress
docker inspect可以查看容器的具体信息,这里筛选出IP。另可进入容器查看。
2、iptable转发端口
方法2: