1.案例:使用 link 关联后台与数据库
创建 test1 容器
docker run -d --name test1 busybox /bin/sh -c "while true; do sleep 3600; done"
创建 test2 并关联到 test1 上
docker run -d --name test2 --link test1 busybox /bin/sh -c "while true; do sleep 3600; done"
进入test2 容器内
docker exec -it test2 /bin/sh
可以使用 ping test1 即可访问 test1
如果test1是 mysql 服务 可以使用
test1:3306 即可访问数据库
2. bridge 的 创建
创建 driver 为 bridge 的网络
docker network create -d bridge my-bridge
查看创建的网络
docker network ls
查看桥接方式
brctl show
3.指定的连接的网络
创建 容器 指定网络 为新创建的网络
docker run -d --name test3 --network my-bridge busybox /bin/sh -c "while true; do sleep 3600; done"
查看 创建的网络 是否有新的 interfaces
brctl show 或使用 docker network inspect my-bridge 查看
4. 将test1 和 test2 link 到 my-bridge 上
连接语法
docker network connect [network_name] [container_name]
docker network connect my-bridge test1
查看是否连接上
docker network inspect my-bridge 查看里面的 containers 是否包含 test1 和 test3
docker network inspect bridge 查看到container 内 也包含了 test1 和 test2
此时在 test1 容器内 是 ping 通 test2 和 test3 的 ip 地址的
而在用户创建的 network (eg:my-bridge) 内 是可以使用 ping [container_name] 的