docker端口映射底层原理及常见写法

1.将宿主机的所有IP地址的81端口映射到容器的80端口。默认使用tcp协议。

[root@centos201 ~]# docker run -d -p 81:80 --name web01 nginx:1.20.1
e196b4a3a6b1b2bb7b97ccfe99479fd98786653c3799270aef98483b18a19301
[root@centos201 ~]#

2.指定IP地址进行端口映射

[root@centos201 ~]# docker run -d -p 10.0.0.201:82:80 --name web02 nginx:1.20.1 # 指定IP地址进行端口映射
e3f2d718b21ff9e8225a4f0115afcf1b8a10f5bcf150ad7fac396c90bcafcff7
[root@centos201 ~]#

3.指定端口范围进行映射

[root@centos201 ~]# docker run -d -p 10.0.0.201:20-21:20-21 --name web03 nginx:1.20.1 # 指定端口范围进行映射
e9a21d00a28cf679935811b555c4a4398e1836bfd39c7e562f63eb9159fa3bd1
[root@centos201 ~]#

4.指定多个不连续的端口映射

[root@centos201 ~]# docker run -d -p 10.0.0.201:9200:9200 -p 10.0.0.201:9300:9300 --name web04 nginx:1.20.1 # 指定多个不连续的端口映射
bec71b4176c51908b9149ecdb910618885993519e419b68909b99a7222e90b83
[root@centos201 ~]#

5.指定协议,若不指定协议,默认是tcp协议。

[root@centos201 ~]# 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协议。
fc667244769fc37b6fe40d23c8cb99dcf1b5b6dd0d3281077c205f033f4272fc
[root@centos201 ~]#

6.宿主机会产生一个随机端口对容器的80端口进行映射

[root@centos201 ~]# docker run -d -p 10.0.0.201::80/tcp --name web06 nginx:1.20.1 # 宿主机会产生一个随机端口对容器的80端口进行映射
dfd0bbc7cb31f11d11bf648fd7e22547e2e38be1485ab352ec3d2515d321c5cd
[root@centos201 ~]#

7.-P(大写)选项可以让宿主机会用一个随机端口对容器暴露的端口进行映射。

[root@centos201 ~]# docker run -d -P --name web07 nginx:1.20.1 # -P(大写)选项可以让宿主机会用一个随机端口对容器暴露的端口进行映射。
8e4142fdfdb716e24e049bf1a5984e712d00352773b55f8a7b518226ba533a7b
[root@centos201 ~]#
[root@centos201 ~]# docker container ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8e4142fdfdb7 nginx:1.20.1 "/docker-entrypoint.…" 6 seconds ago Up 6 seconds 0.0.0.0:32769->80/tcp, :::32768->80/tcp web07
dfd0bbc7cb31 nginx:1.20.1 "/docker-entrypoint.…" About a minute ago Up About a minute 10.0.0.201:32768->80/tcp web06
[root@centos201 ~]#
posted @   只为心情愉悦  阅读(72)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示