端口映射底层原理及常见写法
docker run -d -p 81:80 --name web01 nginx:1.20.1 # 将宿主机的所有IP地址的81端口映射到容器的80端口。默认使用tcp协议。
docker run -d -p 10.0.0.201:82:80 --name web02 nginx:1.20.1 # 指定IP地址进行端口映射
docker run -d -p 10.0.0.201:20-21:20-21 --name web03 nginx:1.20.1 # 指定端口范围进行映射
docker run -d -p 10.0.0.201:9200:9200 -p 10.0.0.201:9300:9300 --name web04 nginx:1.20.1 # 指定多个不连续的端口映射
docker run -d -p 10.0.0.201:53:53/udp -p 10.0.0.201:53:53/tcp --name web05 nginx:1.20.1 # 指定协议,若不指定协议,默认是tcp协议。
docker run -d -p 10.0.0.201::80/tcp --name web06 nginx:1.20.1 # 宿主机会产生一个随机端口对容器的80端口进行映射
docker run -d -P --name web07 nginx:1.20.1 # -P(大写)选项可以让宿主机会用一个随机端口对容器暴露的端口进行映射。