docker之link网络连接

为了让容器之间可以相互ping通,需要让我们的容器连接到其他的容器,这个时候就需要在他启动的时候去设置:
通过ling连接方式,这样的连接配置很烦锁:

[root@localhost pingxixi]# docker run -d  --name tomcat03 -P --link 6f954adffafe  tomcat  
d9b6ec2ed1ae6ed9ff6eb34525715b2eb50bee74b412de55372789dd7ce73064

[root@localhost pingxixi]# docker exec -it tomcat03 ping tomcat01
PING 6f954adffafe (172.17.0.2) 56(84) bytes of data.
64 bytes from 6f954adffafe (172.17.0.2): icmp_seq=1 ttl=64 time=0.363 ms
64 bytes from 6f954adffafe (172.17.0.2): icmp_seq=2 ttl=64 time=0.107 ms在这里插入代码片
64 bytes from 6f954adffafe (172.17.0.2): icmp_seq=3 ttl=64 time=0.098 ms

[root@localhost pingxixi]# docker exec -it tomcat01 ping tomcat03
ping: tomcat03: Name or service not known

从上面的结果得出,tomcat03 ping tomcat01是可以链接的,但是tomcat01ping tomcat03是连接不上的,连接也是需要配置的。

通过docker network ls可以查看所有的docker里面所有的路由

rtt min/avg/max/mdev = 0.098/0.189/0.363/0.123 ms
[root@localhost pingxixi]# docker network ls 
NETWORK ID          NAME                DRIVER              SCOPE
5532048b2d17        bridge              bridge              local
1414c37df57f        host                host                local
9bbc011e717e        none                null                local

然后可以通过docekr network inspecct 5532048b2d17 命令可以查看5532048b2d17里面的消息:

[root@localhost pingxixi]# docker network inspect 5532048b2d17
[
    {
        "Name": "bridge",
        "Id": "5532048b2d17452d466ace7be2c3fcd808df1af940c0cf8e7697212d1c387648",
        "Created": "2020-08-27T20:21:45.942022082+08:00",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.17.0.0/16",
                    "Gateway": "172.17.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "6f954adffafe8d2311f4eda6e01e86d58e16660f665fbb7656f76c3884e377c0": {
                "Name": "tomcat01",
                "EndpointID": "1022a4edf70809762551826c5b85d170bb243c8cc349a590bd9cac9538bb6a5d",
                "MacAddress": "02:42:ac:11:00:02",
                "IPv4Address": "172.17.0.2/16",
                "IPv6Address": ""
            },
            "82dba41228a0b15abc8ccfdb2fa4673c33eeebe391757193fcbcd9676e8bcc76": {
                "Name": "tomcat02",
                "EndpointID": "172c776ee184b7c91eb29ae9a7c02f335e3d7111daaa3022f9d0302e41b91ef9",
                "MacAddress": "02:42:ac:11:00:03",
                "IPv4Address": "172.17.0.3/16",
                "IPv6Address": ""
            },
            "d9b6ec2ed1ae6ed9ff6eb34525715b2eb50bee74b412de55372789dd7ce73064": {
                "Name": "tomcat03",
                "EndpointID": "dee92bf615a2b6e6549312dd9da049b28f4610696460c79cd8f5d6974f9b69f1",
                "MacAddress": "02:42:ac:11:00:04",
                "IPv4Address": "172.17.0.4/16",
                "IPv6Address": ""
            }
        },
        "Options": {
            "com.docker.network.bridge.default_bridge": "true",
            "com.docker.network.bridge.enable_icc": "true",
            "com.docker.network.bridge.enable_ip_masquerade": "true",
            "com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
            "com.docker.network.bridge.name": "docker0",
            "com.docker.network.driver.mtu": "1500"
        },
        "Labels": {}
    }
]

在这里插入图片描述

通过查看桥接模式的配置文件,发现里面都是配置容器ip的地方,加上容器的名字。接着在往下看:
在这里插入图片描述
从以上就可以得出:
–link 就是在我么们hosts中增加一个172.17.0.2 tomcat03 6f954adffafe

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值