Docker:容器网络互联
- 1. 网络
- 2. 自定义网络
1. 网络
默认情况下,所有容器都是以bridge方式连接到Docker的一个虚拟网桥上:
[root@172 demo]# docker inspect mysql
[root@172 demo]# docker inspect dd
在dd容器中ping mysql
但是存在问题:每个容器的ip地址是Docker网桥分配的,如果服务重新启动,或重启过程其他服务启动,ip会产生变动。
2. 自定义网络
ip addr
加入自定义网络的容器才可以通过容器名
互相访问,Docker的网络操作命令如下:
命令 | 说明 |
---|---|
docker network create | 创建一个网络 |
docker network ls | 查看所有网络 |
docker network rm | 删除指定网络 |
docker network prune | 清除未使用的网络 |
docker network connect | 使指定容器连接加入某网络 |
docker network disconnect | 使指定容器连接离开某网络 |
docker network inspect | 查看网络详细信息 |
创建一个docker
网络,自定义名字fz
查看网络 docker network ls
ip addr
让mysql容器链接到fz网络
[root@172 demo]# docker inspect mysql
创建一个容器一开启就连接fz
网络
[root@172 demo]# docker rm -f dd
删除dd容器[root@172 demo]# docker run -d --name dd -p 8080:8080 --network fz docker-demo:1.0
创建dd容器并一开始加入fz
网络
[root@172 demo]# docker inspect dd
进入dd
容器ping mysql