Docker-单节点 容器间单双向通信,容器间共享数据

在Docker创建容器后,为容器生成一个虚拟ip。对外是不能链接的,对内是互通互联的。但是ip会改变

Link单向通信

docker run -d --name 自己容器的名称 images   创建容器时name声明
docker inspect 容器ID                   查看容器元数据,networksetting查看虚拟ip,根据虚拟ip可以在容器内部ping通其他容器,但不能用名称直接ping通

docker run -d --name 自己容器的名称 --link 目标容器名称 images  link链接目标容器
在容器内部可以直接用目标容器名称ping通。在工程中配置项目地址时,直接指定目标容器名称即可

Bridge双向通信

docker创建了一块虚拟网卡,绑定在同一块虚拟网卡的容器都可以互联互通。对外通信,是宿主机物理网卡和虚拟网卡的对应。

docker network ls  列出网络服务列表,默认会有一个docker容器与外部联通的网桥
docker network create -d bridge my-bridge  创建自己的网桥,-d 指定类型为网桥

docker network connect my-bridge web    将web容器和redis容器绑定在同一个网桥,即可互联互通
docker network connect my-bridge redis

容器间共享数据

宿主机下的目录内容,会映射到容器内的目录

docker run --name 容器名  -v 宿主机路径:容器内挂载路径 镜像名
docker run --name t1 -v /usr/webapps:/usr/local/tomcat/webapps tomcat

挂载点设置方式(–volumes-from),同一管理挂载点

创建共享容器
docker create --name webpage  -v /usr/webapps:/usr/local/tomcat/webapps tomcat /bin/true
共享容器挂载点,使用创建的共享容器配置
docker run --volumes-from webpage --name t1 -d tomcat
 
测试例子:更改宿主机下/usr/webapps,访问各个容器是同步修改,因为其实就是各个容器对宿主机目录的映射关系
docker create --name webpage -v /usr/webapps:/usr/local/tomcat/webapps tomcat /bin/true
docker run -d --name t1 -p 8000:8080 --volumes-from webpage tomcat
docker run -d --name t2 -p 8001:8080 --volumes-from webpage tomcat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值