docker端口映射的实现示例

 更新时间:2024年03月21日 09:26:23   作者:ranbo165  
Docker 端口映射允许我们将容器内部的服务绑定到宿主机上的一个或多个端口,本文主要介绍了docker端口映射的实现示例,具有一定的参考价值,感兴趣的可以了解一下

端口映射的作用

1 允许外部网络访问容器内的服务: 通过将容器内的服务绑定到宿主机上的端口,我们可以使得外部网络可以通过宿主机的 IP 地址和端口号来访问容器内的服务。这样,我们就可以将容器中的服务对外暴露,实现与容器交互或调用容器的功能。

2 解决端口冲突问题: 当我们在同一台主机上运行多个容器时,容器内的服务可能会监听相同的端口。通过端口映射,我们可以将这些容器内的服务绑定到不同的宿主机端口上,避免端口冲突

什么是docker的端口映射

Docker 端口映射允许我们将容器内部的服务绑定到宿主机上的一个或多个端口。通过端口映射,我们可以从外部网络访问容器内的服务

docker端口映射定义

Docker除了通过网络访问外,还提供了其他两个非常方便的功能来满足服务访问的基本需求:

一是允许映射容器内应用的服务端口到本地宿主机端口;

二是使用互联机制来实现多个容器间通过容器名来快速访问

端口映射可使用-p、-P来实现 

-p指定要映射的端口,一个指定端口上只可以绑定一个容器

-P将容器内部开放的网络端口随机映射到宿主机的一个端口上

 端口映射支持的格式:

ip:hostport:containerport #指定ip、指定宿主机port、指定容器port
ip::containerport #指定ip、未指定宿主机port(随机)、指定容器port
hostport:containerport #未指定ip、指定宿主机port、指定容器port

端口的映射有以下五种方法:

# 1 将容器暴露的所有端口,都随机映射到宿主机上。
(不推荐使用)

docker run -P -it ubuntu /bin/bash 

# 2 将容器指定端口随机映射到宿主机一个端口上。

docker run -P 80 -it ubuntu /bin/bash
以上指令会将容器的80端口随机映射到宿主机的一个端口上。

# 3 将容器指定端口指定映射到宿主机的一个端口上。
例如:

docker run -p 8000:80 -it ubuntu /bin/bash
以上指令会将容器的80端口映射到宿主机的8000端口上。

# 4 将容器ip和端口,随机映射到宿主机上

docker run -P 192.168.0.100::80 -it ubuntu /bin/bash
以上指令会将容器的ip192.168.0.100和80端口,随机映射到宿主机的一个端口上。

# 将容器ip和端口,指定映射到宿主机上

docker run -p 192.168.0.100:8000:80 -it ubuntu /bin/bash
上指令会将容器的ip192.168.0.100和80端口,映射到宿主机的8000端口

查看映射端口配置

docker port container_ID #容器ID
#结果输出
80/tcp -> 0.0.0.0:800

到此这篇关于docker端口映射的实现示例的文章就介绍到这了,更多相关docker 端口映射内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • docker容器里安装ssh的具体步骤

    docker容器里安装ssh的具体步骤

    本篇文章主要介绍了docker容器里安装ssh的具体步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • win10+Docker Toolbox+mysql教程

    win10+Docker Toolbox+mysql教程

    这篇文章主要介绍了win10+Docker Toolbox+mysql教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • 用Docker搭建nextcloud个人网盘教程

    用Docker搭建nextcloud个人网盘教程

    大家好,本篇文章主要讲的是用Docker搭建nextcloud个人网盘教程,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2021-12-12
  • 如何解决docker容器访问不了外部网络问题

    如何解决docker容器访问不了外部网络问题

    介绍了Docker bridge网络的工作原理,包括虚拟网桥的创建、容器的IP地址分配、IP转发的作用以及NAT的配置,通过配置IP转发和NAT规则,Docker能够实现容器与外部网络之间的通信,文章还提供了解决某个具体问题的步骤
    2024-11-11
  • docker安装Elasticsearch7.6集群并设置密码的方法步骤

    docker安装Elasticsearch7.6集群并设置密码的方法步骤

    本文主要介绍了docker安装Elasticsearch7.6集群并设置密码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 利用docker-compsoe部署前后端分离的项目方法

    利用docker-compsoe部署前后端分离的项目方法

    这篇文章主要介绍了利用docker-compsoe部署前后端分离的项目方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Docker学习笔记之容器查看启动终止删除的方法

    Docker学习笔记之容器查看启动终止删除的方法

    本篇文章主要Docker学习笔记之容器查看启动终止删除的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • docker安装mysql、redis镜像方式

    docker安装mysql、redis镜像方式

    这篇文章主要介绍了docker安装mysql、redis镜像方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 如何解决Linux系统下Docker占满分区的问题

    如何解决Linux系统下Docker占满分区的问题

    本篇文章主要介绍了如何解决Linux系统下Docker占满分区的问题。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Docker 常用命令整理及使用注意事项总结

    Docker 常用命令整理及使用注意事项总结

    这篇文章主要介绍了Docker 常用命令整理及使用注意事项总结的相关资料,这里整理了Docker 的常用命令,说明这些命令是什么意思及使用方法,需要的朋友可以参考下
    2016-12-12

最新评论