Docker网络

Docker网络

外部访问容器

在容器运行网络应用时,我们希望能够访问这些应用,可以在docker run时加上-P-p参数来指定端口映射。

使用-P时,Docker会随机一个49000 ~ 49900的端口到内部容器开放的端口(不推荐使用)。

-p则是指定端口映射,主机的一个指定端口只可以绑定一个容器。

端口映射

-p端口映射有三种格式:

ip:hostport:containerport #指定ip、指定宿主机port、指定容器port
ip::containerport #指定ip、未指定宿主机port(随机)、指定容器port
hostport:containerport #未指定ip、指定宿主机port、指定容器port
docker run -d -p 8080:80 <镜像>

默认本地的所有地址的8080端口映射到容器的80端口

docker run -d -p 127.0.0.1::80 <镜像>

本地的127.0.0.1地址的随机一个端口映射到容器的80端口

docker run -d -p 127.0.0.1:8080:80 <镜像>

本地的127.0.0.1地址8080端口映射到容器的80端口

注意:端口协议默认为tcp,可以在映射格式后加/udp改为udp协议

查看容器端口映射配置

docker port <容器>

容器互联

新建网络

docker network create -d bridge <网络名>

-d参数指定Docker网络类型,有bridgeoverlay

连接容器

运行两个容器并连接到你创建的网络:

docker run -it --name ubuntu1 --network <网络名> ubuntu bash

docker run -it --name ubuntu2 --network <网络名> ubuntu bash

试着在一个容器里ping一下另外一个容器,查看是否能成功连接。

如果有多个容器之间需要互相连接,推荐使用Docker Compose,之后会讲到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值