Skip to content

send SIGHUP to docker daemon after change daemon.json , docker network doesn't reload correctly #1264

@wangweihong

Description

@wangweihong

environment:
Linux bogon 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
docker Version:
1.11.2

  1. I started a etcd server on my node1(192.168.14.130).and create /etc/docker/daemon.json in node2 like this:
    {
    "cluster-advertise": "192.168.14.87:2375",
    "cluster-store": "etcd://192.168.14.130:2379"
    }
    node2 is fresh, it didn't configure docker cluster configuration before.
  2. Run " kill -SIGHUP pidof docker", docker info command get right infos:
    [root@bogon ~]# docker info
    ...
    Labels:
    com.example.environment="production"
    Cluster store: etcd://192.168.14.130:2379
    Cluster advertise: 192.168.14.87:2375
  3. see what docker netowork ls shows
    [root@bogon ~]# docker network ls
    NETWORK ID NAME DRIVER
    fc1fa519d860 bridge bridge
    a34729eddc3e bridge10 overlay
    63795cfb1874 bridge11 overlay
    c8f6150341f0 bridge2 overlay
    c8f6150341f0 bridge2 overlay
    f7caa25698eb bridge5 overlay
    e21e3206baff bridge6 overlay
    4bfd9837011f bridge7 overlay
    d83655b1d8dc bridge9 overlay
    71f7ce2a1f59 host host
    864d033a3a1d isolated_Network overlay
    394cbced64d6 none null
    f44205d44b1b test1 overlay
    fe691a8573c8 test2 overlay
  4. modify daemon.json ,change cluster-store
    {
    "cluster-advertise": "192.168.14.87:2375",
    "cluster-store": "etcd://192.168.14.130:2379**/test3**"
    }

5.run setp 2, 3 again
[root@bogon ~]# kill -SIGHUP pidof docker
[root@bogon ~]# docker info
...
Labels:
com.example.environment="production"
Cluster store: etcd://192.168.14.130:2379/test3
Cluster advertise: 192.168.14.87:2375

[root@bogon ~]# docker network ls
NETWORK ID NAME DRIVER
fc1fa519d860 bridge bridge
a34729eddc3e bridge10 overlay
63795cfb1874 bridge11 overlay
c8f6150341f0 bridge2 overlay

docker network ls show infos stored in etcd://192.168.14.130:2379 instead of etcd://192.168.14.130:2379/test3

  1. docker network ls show correct infos after restart docker daemon
    [root@bogon ~]# systemctl restart docker
    [root@bogon ~]# docker network ls
    NETWORK ID NAME DRIVER
    fd8072220683 bridge bridge
    082f0f6947bd bridge3 overlay
    958c9f00d0e5 bridge4 overlay
    9f380b2f9829 bridge5 overlay
    bce851833ab5 docker_gwbridge bridge
    cc1c38e19959 host host
    b1f56b75853a network 1 overlay
    4d52f6e74d73 network 2 overlay
    4f74db38d8f2 network 3 overlay
    841cce023697 network 4 overlay
    182a7c53433d none null

Is this a bug?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions