Docker笔记4 端口映射和容器互联

端口映射

启动容器时,必须制定对应的参数才能访问容器内的网络应用和服务,使用-p或者-P来指定端口映射。使用大写的-P,Docker会随机映射49000~49900的端口到内部容器的开放端口。
以Zookeeper的容器为例子:
在这里插入图片描述

也可以使用-p指定绑定端口,基本格式是:

  • HostPort:ContainerPort:本地端口到容器端口的映射
  • IP::ContainerPort:绑定IP的任意端口到容器的端口
  • IP:HostPort:ContainerPort:制定映射使用一个特定地址

可以使用docker port查看绑定的地址,比如:

docker port zookeeper 5000

互联机制实现互相访问

互联技术是让多个容器中的应用进行快速交互的方式,它会在源容器和目标容器之间建立连接关系,接收容器可以不指定IP情况下,快速访问源容器的内容。

现在常用的做法是,把需要互联的容器加入到同一个docker网络中,实现互相访问。这里借助busybox镜像进行操作。

docker pull busybox

启动一个终端,执行:

docker network create -d bridge my-net

这相当于在docker内部建立了一个名字为my-net的子网。

之后,当前终端执行:

docker run -it --rm --name busybox1 --network my-net busybox sh

创建了一个容器,位于docker的子网my-net中。同样的,新打开一个终端,执行命令:

docker run -it --rm --name busybox2 --network my-net busybox sh

此时再启动另一个新的终端,查看docker容器的状态:

在busybox中分别ping对方,显示如图:


两者都可以解析出对方的IP,并实现互通,说明网络建立成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值