Docker端口映射是指將容器內應用的服務端口映射到本機宿主機器。當要在宿主機外部訪問Docker內部應用時,需要對容器內應用端口進行映射。
一、容器啟動時指定端口映射
容器運行時可以通過-p 或 -P參數指定端口映射。
1、-P隨機映射
docker run時使用-P參數,Docker會隨機選擇一個宿主機端口映射到內部容器開發的網絡端口
2、-p指定端口映射
使用-p參數時,可以指定映射的端口,並且在一個指定的端口上只能綁定一個容器,支持的格式有:
IP:HostPort:ContainerPort
IP:ContainerPort
HostPort:ContainerPort
如 docker run -it -p 8080:80 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: