公司近期更换了网络设备,网段也更换了,导致原来的测试服务器无法连接,网关强制重启后才得以解决。
服务器启动后几个docker服务没有正常重启。
执行命令查询服务状态

docker ps -a

确实有几个服务停止运行了,于是手动执行启动命令

docker start nacos

返回异常信息

Error response from daemon: network f0e06a7bb7c48bc5765c576a78fbc918062ebd18ab0c2c5f95a22109f43e4d5b not found

再次查看创建的network信息

docker network ls

得到的结果如下

NETWORK IDNAMEDRIVERSCOPE
f329f40ed61bbridgebridgelocal
23da4d14f772hosthostlocal

查看网络的具体配置

docker network inspect f329f40ed61b

得到的结果

[
    {
        "Name": "bridge",
        "Id": "f329f40ed61b335f23c0fd079dc341b37945e50046451c89364c431313da0c14",
        "Created": "2023-05-06T08:51:16.831699243+08:00",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "192.168.200.0/24",
                    "Gateway": "192.168.200.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "1004b28c5b7bd7e9e31ed51e3eb11df294bd18ac1d409a7f9ec83e99e4b75c89": {
                "Name": "service",
                "EndpointID": "004858fd0173d6da107bbd1e8ca1b9281e2ecbd481b5fd93c79e73bfa3aeb669",
                "MacAddress": "02:42:c0:a8:c8:07",
                "IPv4Address": "192.168.200.7/24",
                "IPv6Address": ""
            },
            ... ... <省略其他配置>

再查看刚才的nacos容器详情

docker inspect nacos

得到的网络配置信息如下

... ...
"Networks": {
   "network": {
       "IPAMConfig": {
           "IPv4Address": "172.16.0.4"
       },
       "Links": null,
       "Aliases": [
           "d3183ca265e9"
       ],
       "NetworkID": "f0e06a7bb7c48bc5765c576a78fbc918062ebd18ab0c2c5f95a22109f43e4d5b",
       "EndpointID": "",
       "Gateway": "",
       "IPAddress": "",
       "IPPrefixLen": 0,
       "IPv6Gateway": "",
       "GlobalIPv6Address": "",
       "GlobalIPv6PrefixLen": 0,
       "MacAddress": "",
       "DriverOpts": null
   }
}

可以看得到两个IP不一样,那就肯定原来nacos所绑定的network被删除了,需要重新创建

docker network create --driver bridge --subnet 172.16.0.0/16 --gateway 172.16.0.1 network

查看创建后的网络信息

docker network list

可以看到已经创建好了,之后需要重新绑定

NETWORK IDNAMEDRIVERSCOPE
f329f40ed61bbridgebridgelocal
23da4d14f772hosthostlocal
0713e1d89b4bnetworkbridgelocal

先解绑

docker network disconnect 0713e1d89b4b nacos

再绑定

docker network connect 0713e1d89b4b nacos

再次查看容器的网络信息,正常显示了

"Networks": {
   "network": {
       "IPAMConfig": {},
       "Links": null,
       "Aliases": [
           "d3183ca265e9"
       ],
       "NetworkID": "0713e1d89b4bb63af3c66c98448c5581ec2c5cd32573af71bff16e00fe1a1439",
       "EndpointID": "532a01a29124eed661e67ab3cc0e7c3fd772dc584adc1d944757e1be57951c46",
       "Gateway": "172.16.0.1",
       "IPAddress": "172.16.0.3",
       "IPPrefixLen": 16,
       "IPv6Gateway": "",
       "GlobalIPv6Address": "",
       "GlobalIPv6PrefixLen": 0,
       "MacAddress": "02:42:ac:10:00:03",
       "DriverOpts": {}
   }
}

重新启动服务

docker start nacos

正常启动,剩下的网络也按照这个方法启动成功。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐