如何使用docker在带有法兰绒网络的kubernetes集群中运行

时间:2017-07-26 13:54:28

标签: docker flannel

我有一个带法兰绒的kubernetes簇。它工作正常。但是当我使用docker run命令启动容器时,容器无法到达外部。

$ docker run --rm -ti centos:7.3.1611 bash
[root@d8a7d18b312a /]# ping 10.33.46.2

10.33.46.2 是我群集中的另一个节点,ping失败。

ip a show docker0
6: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN
    link/ether 02:42:77:05:f5:6c brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 scope global docker0
       valid_lft forever preferred_lft forever
    inet6 fe80::42:77ff:fe05:f56c/64 scope link
        valid_lft forever preferred_lft forever

它显示我的docker0已关闭。我知道它在kubernetes集群中使用cni作为docker容器。但我在

中找不到任何可用的网络
docker network list
NETWORK ID          NAME                DRIVER              SCOPE
a3bd58929a71        bridge              bridge              local
925a55f8f13d        host                host                local
f0c9234fb13f        none                null                local

我没有理解如何在我的群集中使用docker run

1 个答案:

答案 0 :(得分:0)

我在我的K8S群集上遇到了这个问题,我的Buildkite代理无法运行docker构建,因为它没有Internet访问权限。我通过在Docker命令中通知--network = host来使用主机网络而不是默认的桥接网络解决了这个问题。我不知道它是否正确,但是,它解决了我的问题。