【Docker基础系列】Docker 中的各类端口功能示例详解

作者&投稿:黎于 (若有异议请与网页底部的电邮联系)
~ 在Docker中,理解端口的功能对于有效管理容器化应用程序至关重要。端口是容器内部与外部进行网络通信的桥梁。根据用途和功能,Docker中的端口可以分为几种类型。
首先是容器端口(Container Ports),即运行在Docker容器内部的应用程序所使用的端口。创建容器时,开发者可以指定容器内部应用程序监听的端口,使得外部网络能够通过容器的网络接口与容器内的应用程序进行通信。
宿主机端口(Host Ports)则是指宿主机上可用于与容器通信的端口。当运行容器时,通过Docker的-p或--publish参数可以将容器端口映射到宿主机的端口上,这样外部网络可以通过访问宿主机的端口间接访问到容器内部的端口。
随机端口(Random Ports)是Docker为容器自动分配的,用于在宿主机上没有指定具体端口映射时的情况。这样,在不知道具体端口号的情况下,通过查询Docker命令或工具仍能获得映射端口,实现容器访问。
网络端口(Network Ports)涉及Docker网络接口上使用的端口。Docker支持多种网络模式,如桥接模式、主机模式、容器模式和自定义网络模式。在自定义网络模式下,容器之间可通过网络端口进行通信。
暴露端口(Exposed Ports)是指在Docker容器内部指定的端口,但不与宿主机端口进行映射。这些端口仅在容器内部或Docker网络内部可见,外部网络无法直接访问,通常用于容器之间的通信或容器内部服务的监听。
服务端口(Service Ports)在容器编排工具如Docker Compose或Kubernetes中定义,它们在服务层面表示对外暴露的端口,可以通过服务名称和端口号访问对应的容器。
以下是一些Docker端口映射的示例,帮助理解如何在实际应用中使用端口:
单个端口映射:假设你有一个运行在容器内部端口80的Web应用,可以将80端口映射到宿主机的8080端口,通过访问宿主机的8080端口即可访问容器内部的Web应用。
随机端口映射:如果你不希望指定具体的宿主机端口,可以让Docker为你选择一个随机的高端口进行映射,通过-P参数实现。
多个端口映射:如果应用程序需要监听多个端口,可以使用-p参数指定多个端口映射,实现容器内部多个端口与宿主机对应端口的通信。
环境变量中的端口映射:在Docker Compose文件中,可以指定服务的端口映射到宿主机的相应端口。
容器间通信端口:通过创建自定义Docker网络并连接容器,实现容器间的通信,暴露端口使得一个服务可以通过容器名和端口号访问另一个服务。


全网最详细docker安装教程
sudo yum update -y步骤二:安装必备软件包安装Docker需要几个关键组件:yum-utils、device-mapper-persistent-data和lvm2。输入以下命令,它们的安装将为Docker的安装奠定基础:sudo yum install -y yum-utils device-mapper-persistent-data lvm2步骤三:添加Docker官方仓库要访问Docker的资源,你需要添加其...

既然有了 Docker,为什么还要 Kubernetes?
标准答案就是: 因为有了 Docker,所以才要Kubernetes 。是不是感觉进入一个loop,我也这感觉。从图中也可以看出,Docker容器技术是Kubernetes平台的基础。容器技术主要作用是 隔离 ,通过对系统的关键资源的隔离,实现了 主机抽象 。Kubernetes平台则是在 抽象主机 的基础上,实现了 集群抽象 。用一句话做...

CentOS 系统部署 Docker
首先,手动安装步骤如下:添加EPEL存储库:yum install epel-release –y清理缓存:yum clean all列出所有包:yum list安装Docker:yum install docker-io –y启动Docker服务:systemctl start docker确认安装:docker infoDocker的基本操作包括:管理守护进程、镜像管理(如下载、标签、删除等)以及容器操作(...

boot2docker用的什么系统
1. 下载 Boot2Docker在我们开始安装之前,我们需要 Boot2Docker 的可执行文件。可以从它的 Github 下载最新版本的 Boot2Docker。在这篇指南中,我们从网站中下载版本 v1.6.1。我们从那网页中用我们喜欢的浏览器或者下载管理器下载了名为 docker-install.exe 的文件。2. 安装 Boot2Docker现在我们运行...

大家都在怎么使用 docker
Docker的开发环境 在深入Docker和IDE细节之前,让我们看看,为什么得把Docker放进必需的开发工具列表中。构建系统 首先,Docker能够使我们的构建环境便携,可重复以及保持隔离。举个例子:你需要使用5.1版本的gcc工具构建一个C文件。 所有需要做的就是运行以下命令(当然,这里假定你已经安装了Docker):dock...

什么是Docker
Docker容器具有哪些特点 ①轻量化:一台主机上运行的多个Docker容器可以共享主机操作系统内核;启动迅速,只需占用很少的计算和内存资源。②标准开放:Docker容器基于开放式标准,能够在所有主流的Linux版本、Microsoft Windows以及包括VM裸机服务器和云在内的任何基础设施上运行。③安全可靠:Docker赋予应用的隔离...

大数据学习一般都学什么内容?
如需学习大数据,推荐选择【达内教育】。大数据的学习内容有很多,大致如下:基础阶段:Linux、Docker、KVM、MySQL基础、Oracle基础、MongoDB、redis。hadoopmapreducehdfsyarn:hadoop:Hadoop概念、版本、历史,HDFS工作原理,YARN介绍及组件介绍。大数据存储阶段:hbase、hive、sqoop。大数据架构设计阶段:Flume...

如何用docker打造前端开发环境
我们可以使用ubuntu作为基础自由配置开发环境,首先获取ubuntu镜像:#不输入版本号,默认获取latest即最新版dockerpullubuntu 新建一个容器:dockerrun-itd--namefed597ce\/bin\/bash 这里的-itd其实是-i-t-d的合写,-d是在后台中运行容器,相当于新建时一并启动容器,这样就不用使用dockerstart命令了。后面我们直接用vscode...

如何系统地学习 Docker
Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理\/负载均衡服务器。Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动发现。它可以让我们更加专注于应用的开发,而不是基础架构。Weave 提供了一个如此棒的环境,仿佛它的所有容器都属于同个网络,不...

docker的作用
Docker使用的分层存储以及镜像的技术,使得应用重复部分的复用更为容易,也使得应用的维护更新更加简单,基于基础镜像进一步扩展镜像也变得非常简单。此外,Docker团队同各个开源项目团队一起维护了一大批高质量的官方镜像,既可以直接在生产环境使用,又可以作为基础进一步定制,大大的降低了应用服务的镜像制作成本...

任县18782542670: 学习Docker哪本书最好 -
察供康得: 《第一本docker书》是我接触的第一本docker类书籍,感谢@upyun公司提供的免费书籍采购.开始也会有种没必要看书的错觉,因为现在网上的资源的很多.而且docker使用也是十分通俗易懂的.但是细细看了下《第一本docker书》感觉受益匪浅.一方面是温故,另一方面是知新.很多时候,我很容易满足现在的状况,可是书中往往会提出一些更为巧妙的做法.最近在调研docker中构建CI,《第一本docker书》中的Jenkins CI环境,一种很巧妙的方式,甚是佩服.总之,书的好处在于帮你整合了些作者认为十分好的想法,当然如果你拥有更好的方式去接触知识,自是再好不过.作者:莫红波 来源:知乎

任县18782542670: 如何学习Docker -
察供康得: 1.学习Docker,如果没有云计算的基本知识,以及内核的基本知识,那么学习并理解起来会稍吃力.作为容器,Docker容器的优势在哪,不足在哪,最好了解容器的实现是怎样的(简单了解);拥有镜像管理,Docker又该如何体现软件开发,...

任县18782542670: 没什么难的docker入门与开发实战 pdf -
察供康得: 使用Spring Cloud构建实际的微服务架构. 基本概念: 使用Docker进行集成测试 混合持久化 微服务架构 服务发现 API网关 Docker 使用Docker对每一个服务进行构建和部署.使用Docker Compose在一个开发机上进行端到端的集成测试.

任县18782542670: 如何给docker设置http代理 -
察供康得: 解决方案一:停止docker服务,手动以使用2375端口监听所有网络接口的方式启动docker daemon.$ systemctl stop docker.service$ nohup docker daemon -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock & 解决方案二:编辑配置文件,...

任县18782542670: Docker的主要作用是什么? -
察供康得: 目前来看,Docker至少有以下应用场景:1)测试:Docker 很适合用于测试发布,将 Docker 封装后可以直接提供给测试人员进行运行,不再需要测试人员与运维、开发进行配合,进行环境搭建与部署.2)测试数据分离:在测试中,经常由...

任县18782542670: 上如何安装Docker及基本用法 -
察供康得: VMware Workstation:9.0 操作系统:centos6.5 [root@dockerServer Desktop]# uname -a Linux dockerServer 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux docker版本:[root@dockerServer ...

任县18782542670: 如何在容器中运行docker命令 -
察供康得: 我们可以轻易地在Docker容器中运行大多数GUI程序且不出错.Docker是一个开源项目,提供了一个打包、分发和运行任意程序的轻量级容器 的开放平台.它没有语言支持、框架或者打包系统的限制,并可以运行在任何地方、任何时候,从小...

任县18782542670: docker怎么安装自己的镜像文件 -
察供康得: 方法/步骤 在使用Docker的过程中,我们除了从Docker Hub上下载已经做好的镜像,很多时候需要我们自己制作镜像.下面想在这个文章中说明一下镜像的制作方法.制作镜像的方式主要有两种:通过docker commit 制作镜像 通过docker build 制作镜像 这两种方式都是通过改进已有的镜像来达到自己的目的.制作基础镜像,会在另外一篇文章“从零开始制作基础镜像”中介绍.docker commit docker commit 是往版本控制系统里提交一次变更.使用这种方式制作镜像,本质上是运行一个基础镜像,然后在基础镜像上进行软件安装和修改.最后再将改动提交到版本系统中.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网