Docker 容器间网络通信指令

出发点

本文中笔者记录了实现Docker容器间单向通信和双向通信用到的指令和示例代码。

单向通信

在启动容器时,--link database 声明了对database 容器的网络通路进行打通。

# 启动Docker服务
service docker start
# 启动database容器 模拟数据库服务
docker run -d --name database -it centos /bin/bash
# 启动webservice容器 模拟需要依赖数据库的web服务
docker run -d --name webservice --link database tomcat
# 进入到webservice容器内
docker exec -it 17afd3d3f7b4 /bin/bash
# 测试连通 database
ping database
# 可以通过inspect查看 容器的虚拟ip地址
docker inspect 17afd3d3f7b4

双向通信

需要通过添加网桥和宿主机虚拟网卡的方式实现。

# 查看当前docker的网络服务, 默认会有一个bridge 网桥,作用时使容器能够访问外网
docker network ls
# 删除老的webservice服务
docker rm -f b5849ed5a0b8
# 创建新的webserver服务
docker run -d -it --name webserver centos /bin/bash
# 添加新的网桥
docker network create -d bridge my-bridge
# 依次将webserver 和 database添加到网桥 my-bridge 中
docker network connect my-bridge database
docker network connect my-bridge webserver
# 进入到两个容器中测试互联通信吧
docker exec -it 1fb8dfc42f41 /bin/bash
docker exec -it ba99532b35ac /bin/bash

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值