首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么docker为所有容器提供了不同范围的IP地址,我如何使它成为默认的?

问为什么docker为所有容器提供了不同范围的IP地址,我如何使它成为默认的?
EN

Stack Overflow用户
提问于 2018-11-01 10:38:04
回答 1查看 326关注 0票数 0

我在创建一个码头容器时得到了不同范围的IP地址.

码头版本: 18.06

Ubuntu: 16.04

Docker为所有容器提供默认IP地址。

默认IP地址范围172.17.0.1/16

但这一次它提供了不同范围的IP地址(168.92.x.x)。

问题:为什么docker为所有容器提供了不同范围的IP地址,以及如何使其成为默认值?。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-05 09:05:38

我找到了解决办法。

但我不知道为什么会发生(Docker assign different Range of IP address to all containers)。

当我们创建一个Docker容器时,它正在创建一个新的projectName_default网络。

在这个网络中定义了这样的数据:

代码语言:javascript
复制
ubuntu@pro_staging:~> sudo docker network ls
NETWORK ID          NAME                 DRIVER              SCOPE
fb1861a4afc0        projecName_default   bridge              local
e60b761f9aa9        bridge               bridge              local
0ab8ff5w5f2d        host                 host                local
a4e689dc9dcb        none                 null                local
ubuntu@pro_staging:~> sudo docker inspect projecName_default
[
    {
        "Name": "projecName_default",
        "Id": "fb1861a4ac4059f6abea25b49c331390d651fdsdde24e15a848507723c2e4cd4f",
        "Created": "2018-11-02T11:15:37.136315048Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.20.0.0/16",
                    "Gateway": "172.20.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "87855a403d18df21910d6fd6d0132328d09a954800200e46ad35fa325fb42897f": {
                "Name": "projecName_default_containr1",
                "EndpointID": "a55d85fb759d997957fdd15eddba28e1598176d7c5bdb9e2d42fd1967f7f763b",
                "MacAddress": "02:42:ac:14:00:03",
                "IPv4Address": "172.20.0.3/16",
                "IPv6Address": ""
            },
            "9b0d45d8310e9877de147b89dd74c7dfb2d55a1660c7ab664f3e831d100eee0f": {
                "Name": "projecName_default_containr_2",
                "EndpointID": "68ba68e2c4bb3a7a8861b1fa2d43edecbfc0d29586c8169361bb47e94c37d460",
                "MacAddress": "02:42:ac:14:00:04",
                "IPv4Address": "172.20.0.4/16",
                "IPv6Address": ""
            },
            "edf3bf11199dba6b7ada6105773341baca4790ff713d40988ffbe54cd73a638d": {
                "Name": "projecName_default_containr_3",
                "EndpointID": "62d17e5b7f1909d60aa4c79fccb276f5a50f84d79b9da8d6f6bf5c7f54cb313f",
                "MacAddress": "02:42:ac:14:00:02",
                "IPv4Address": "172.20.0.2/16",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {}
    }
]

解决方案:

代码语言:javascript
复制
# Remove default network 
ubuntu@pro_staging:~> sudo docker network rm projecName_default
#Restart docker
ubuntu@pro_staging:~> sudo systemctl restart docker
#After restart docker create container again.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53099562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档