docker容器之间通过bridge进行通信

创建用户自定义bridge

docker network create my-net        # 创建了一个名为"my-net"的网络

将容器加入到"my-net"中

docker network connect my-net 容器名
docker network connect my-net mysql5.7
docker network connect my-net mongo
docker network connect my-net canal-admin

查看网络配置

docker network inspect my-net
结果如下:
[
    {
        "Name": "my-net",
        "Id": "a6b29914d0fad56ad65b0277d90e017c809152faea3e2ea4d672133a073c1396",
        "Created": "2020-07-14T08:35:41.172935713Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": {},
            "Config": [
                {
                    "Subnet": "172.18.0.0/16",
                    "Gateway": "172.18.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "2224add0efa15975ed2e81449429f8d94bc007071805d011cd493ffc90b5f2d3": {
                "Name": "redis63790",
                "EndpointID": "4cf1cf4077e0326968277c100bf6b60e686aba3413da4ee6412ce1f6788e64ff",
                "MacAddress": "02:42:ac:12:00:04",
                "IPv4Address": "172.18.0.4/16",
                "IPv6Address": ""
            },
            "2773e86e446fd41eddab25622dc1b557cd3758c8c8dd2875d33940673b100483": {
                "Name": "mysql5.7",
                "EndpointID": "070fa47192ecaa0e5ddc4d753765232755d3158c44f7f7300d359bec829fa668",
                "MacAddress": "02:42:ac:12:00:02",
                "IPv4Address": "172.18.0.2/16",
                "IPv6Address": ""
            },
            "4102e40d211ae649d777e2ef3c803a32c5c9285054ee0cc96708114445f4e2c3": {
                "Name": "canal-admin",
                "EndpointID": "5aa2a4f72a4b75726c82e5bf33b73d12a7d0c4706d8043811fa9b4feb1a34da8",
                "MacAddress": "02:42:ac:12:00:06",
                "IPv4Address": "172.18.0.6/16",
                "IPv6Address": ""
            },
            "654b31294f121f0059b48e239357672ce6f76f502ce2dc052514fb986eb937b9": {
                "Name": "canal-server",
                "EndpointID": "b7639aeeb38934813ab948089b662628da53c687403178f467fbcca97e99700e",
                "MacAddress": "02:42:ac:12:00:05",
                "IPv4Address": "172.18.0.5/16",
                "IPv6Address": ""
            },
            "b194fd23c69c2ca369a2b5386b87a140bcfb6b28ec905b5a3ec4667d4e2f0e68": {
                "Name": "mongo",
                "EndpointID": "9bc3fbdcd4cc3a7ff876bd2a41ad5942dc19e010474857c0ce024a2ef5c1ba45",
                "MacAddress": "02:42:ac:12:00:03",
                "IPv4Address": "172.18.0.3/16",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {}
    }
]


可以通过容器名或别名在容器间通信

ping mysql5.7 

结果如图

断开某个网络

docker network disconnect bridge mysql5.7
posted @ 2020-12-09 15:40  rm-rf*  阅读(236)  评论(0编辑  收藏  举报