Docker

Docker-网络配置

2020-11-08  本文已影响0人  rongsheng730

目标

容器间通过主机名访问

默认网络环境(动态 IP,通过主机名无法通信)

docker run -it --rm --name testdb  -h testdb  centos:8 /bin/bash
docker run -it --rm --name testweb -h testweb centos:8 /bin/bash

[root@testdb /]# ping testweb
ping: testweb: Name or service not known

[root@testweb /]# ping testdb
ping: testdb: Name or service not known

修改 Docker 默认网关

  1. 创建网络桥接
docker network create -d bridge --subnet=192.168.16.0/20 my-bridge

docker network ls

ip a
  1. 创建容器 并 配置网桥
docker run -it --rm -h testdb  --network my-bridge centos:8 /bin/bash

docker run -it --rm -h testweb --network my-bridge centos:8 /bin/bash

[root@testdb /]# ping testweb

[root@testweb /]# ping testdb
  1. 查看 bridge0 网络
docker network inspect bridge0
  1. 创建一个日常排查用的 centros 容器
docker run -id --name test -h test --network my-bridge centos:8 /bin/bash

docker exec -it test /bin/bash

参考资料

docker Pipework配置宿主机和docker实例的IP在同一个网段
Docker 踩坑记 (一):CentOs7 配置不失效网桥,pipework 分配 IP 给 Docker 容器
Docker-Docker容器跨主机通信
Docker容器与宿主机同网段互相通信
Linux虚拟网络设备之bridge(桥)

上一篇 下一篇

猜你喜欢

热点阅读