首页 > 其他分享 >docker端口映射底层原理及常见写法

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

时间:2024-01-21 21:44:06浏览次数:35  
标签:写法 centos201 端口 nginx docker root 80 端口映射

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 ~]# 

标签:写法,centos201,端口,nginx,docker,root,80,端口映射
From: https://www.cnblogs.com/liuzhonghua1/p/17978431

相关文章

  • docker数据持久化(存储卷)
    1.查看现有的存储卷[root@centos201~]#dockervolumels#查看现有的存储卷DRIVERVOLUMENAME[root@centos201~]#2.创建随机(匿名)的存储卷[root@centos201~]#dockervolumecreate#创建随机(匿名)的存储卷050d2f963345d595c827551adc27ee48d61d482bfcf7c86......
  • docker容器管理
    1.查看容器[root@centos201~]#dockerps#查看现有的容器列表。CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES6aab26123615nginx:1.16"nginx-g'daemonof…"52secondsagoUp51seconds8......
  • docker
    配置阿里云源##下载安装wget以防万一本机没有wget命令[root@localhost~]#yum-yinstallwget##切换目录到本地yum源地址[root@localhost~]#cd/etc/yum.repos.d##创建一个文件[[email protected]]#mkdirback##将所有.repo文件转移到刚创建的目录下[......
  • docker镜像管理
    1.查看镜像[root@centos201~]#dockerimagels#查看现有的镜像列表。REPOSITORYTAGIMAGEIDCREATEDSIZEhello-worldlatestfeb5d9fea6a520monthsago13.3kB[root@centos201~]#[root@centos201~]#[root@centos201~]#doc......
  • Docker 学习笔记 - 4
    容器数据卷1.容器数据卷(1)是什么容器删除后数据自然也就没有了,所以用卷来保存数据。容器数据卷功能是持久化和数据共享。卷就是目录或文件,存在于一个或多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过UnionFileSyste提供一些用于持续存储或共享数据的特性。......
  • 【docker-compose】Redis安装教程
    仅供学习参考,请勿轻易在生产环境使用0.文件目录下面的文件按照这个目录层级放置,首先创建/docker/redis文件夹,/docker/redis对应下边图中REDIS。1.创建目录mkdir-p/docker/redis/conf/docker/redis/data/docker/redis/logschmod-R777/docker/redis/conf/doc......
  • Docker官方教程 Docker Getting Started Tutorial
     https://github.com/docker/getting-started 在线阅读:https://docs.docker.com/get-started/ https://blog.csdn.net/ayiya_Oese/article/details/114304669 FROMnode:18-alpineWORKDIR/appCOPY..RUNyarninstall--productionCMD["node",&qu......
  • 如何恢复已经删除的 docker 容器的数据
    前言使用docker自带的volume机制进行数据的持久化,docker会在宿主机的特定位置(/var/lib/docker/volumes)维护各个volumes,面对容器删除的问题,有如下几个结论:容器启动(dockerrun)时,即使没有显示的指定-v-mount参数,容器的相关数据已经被作为volumes持久化存储了,比如在/var/li......
  • Ubuntu20.04部署docker环境
    1.卸载旧的docker版本forpkgindocker.iodocker-docdocker-composepodman-dockercontainerdrunc;doapt-getremove$pkg;done2.切换国内的软件源cat>/etc/apt/sources.list<<EOFdebhttps://mirrors.aliyun.com/ubuntu/focalmainrestricteduniversemultiv......
  • 使用 Docker Compose V2 快速搭建日志分析平台 ELK (Elasticsearch、Logstash 和 Kiba
    前言ELK是指Elasticsearch、Logstash和Kibana这三个开源软件的组合。Elasticsearch是一个分布式的搜索和分析引擎,用于日志的存储,搜索,分析,查询。Logstash是一个数据收集、转换和传输工具,用于收集过滤和转换数据,然后将其发送到Elasticsearch或其他目标存储中。Kiba......