docker / compose

Define and run multi-container applications with Docker
https://docs.docker.com/compose/
Apache License 2.0
33.18k stars 5.13k forks source link

[BUG] can't remove networks #10990

Open skiffer-git opened 10 months ago

skiffer-git commented 10 months ago

Description

I want to remove three networks 172.28.0.1, 172.20.0.1, 172.19.0.1, but they cannot be found using 'docker network ls', and 172.28.0.1 is displayed twice.

root@VM-0-9-ubuntu:/data/openim/openim-docker# ifconfig br-060f06276afb: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.28.0.1 netmask 255.255.0.0 broadcast 172.28.255.255 inet6 fe80::42:deff:fee2:31fc prefixlen 64 scopeid 0x20 ether 02:42:de:e2:31:fc txqueuelen 0 (Ethernet) RX packets 7 bytes 392 (392.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 8 bytes 968 (968.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

br-44e4088c44fa: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.20.0.1 netmask 255.255.0.0 broadcast 172.20.255.255 inet6 fe80::42:b1ff:fe9f:99e0 prefixlen 64 scopeid 0x20 ether 02:42:b1:9f:99:e0 txqueuelen 0 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 7 bytes 826 (826.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

br-5ad852a3ae66: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.19.0.1 netmask 255.255.0.0 broadcast 172.19.255.255 ether 02:42:b1:f3:29:d0 txqueuelen 0 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

br-d1b3aac5521e: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.28.0.1 netmask 255.255.0.0 broadcast 172.28.255.255 inet6 fe80::42:2bff:febe:cfb8 prefixlen 64 scopeid 0x20 ether 02:42:2b:be:cf:b8 txqueuelen 0 (Ethernet) RX packets 38 bytes 3076 (3.0 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 43 bytes 15757 (15.7 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255 ether 02:42:92:4e:22:76 txqueuelen 0 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.0.0.9 netmask 255.255.252.0 broadcast 10.0.3.255 inet6 fe80::5054:ff:feba:2d9d prefixlen 64 scopeid 0x20 ether 52:54:00:ba:2d:9d txqueuelen 1000 (Ethernet) RX packets 6091614 bytes 6741633723 (6.7 GB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2017927 bytes 492103886 (492.1 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Local Loopback) RX packets 981548 bytes 92937288 (92.9 MB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 981548 bytes 92937288 (92.9 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

docker network ls NETWORK ID NAME DRIVER SCOPE 45338a6d14b3 bridge bridge local d74bd80fa9ee host host local aa7c1e759469 none null local

root@VM-0-9-ubuntu:/data/openim/openim-docker# docker inspect 45338a6d14b3 [ { "Name": "bridge", "Id": "45338a6d14b36e9963220d38cdbf844051565a83d0a6ebbc6ddcbb5722d00c3f", "Created": "2023-09-08T16:08:00.243341073+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": {}, "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": {} } ]

root@VM-0-9-ubuntu:/data/openim/openim-docker# docker inspect d74bd80fa9ee [ { "Name": "host", "Id": "d74bd80fa9eec9972b288b1380a02de20be064a015bffca404d0fcb80c929621", "Created": "2023-09-08T16:08:00.206961596+08:00", "Scope": "local", "Driver": "host", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": {}, "Options": {}, "Labels": {} } ]

root@VM-0-9-ubuntu:/data/openim/openim-docker# docker inspect aa7c1e759469 [ { "Name": "none", "Id": "aa7c1e759469ddbc082ba7a70a94fbd8d8a3c5f4b22044ba8139de0252c91b35", "Created": "2023-09-08T16:08:00.192821711+08:00", "Scope": "local", "Driver": "null", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": {}, "Options": {}, "Labels": {} } ]

Steps To Reproduce

No response

Compose Version

root@VM-0-9-ubuntu:/data/openim/openim-docker# docker version
Client: Docker Engine - Community
 Version:           24.0.6
 API version:       1.43
 Go version:        go1.20.7
 Git commit:        ed223bc
 Built:             Mon Sep  4 12:31:44 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          24.0.6
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.7
  Git commit:       1a79695
  Built:            Mon Sep  4 12:31:44 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.22
  GitCommit:        8165feabfdfe38c65b599c4993d227328c231fca
 runc:
  Version:          1.1.8
  GitCommit:        v1.1.8-0-g82f18fe
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Docker Environment

root@VM-0-9-ubuntu:/data/openim/openim-docker# docker version
Client: Docker Engine - Community
 Version:           24.0.6
 API version:       1.43
 Go version:        go1.20.7
 Git commit:        ed223bc
 Built:             Mon Sep  4 12:31:44 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          24.0.6
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.7
  Git commit:       1a79695
  Built:            Mon Sep  4 12:31:44 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.22
  GitCommit:        8165feabfdfe38c65b599c4993d227328c231fca
 runc:
  Version:          1.1.8
  GitCommit:        v1.1.8-0-g82f18fe
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Anything else?

No response

ndeloof commented 10 months ago

how does this relates to docker compose ?

skiffer-git commented 10 months ago
version: '3'

networks:
  server:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: '${DOCKER_BRIDGE_SUBNET}'
          gateway: '${DOCKER_BRIDGE_GATEWAY}'

services:
  mysql:
    image: mysql:5.7
    ports:
      - "${MYSQL_PORT}:3306"
    container_name: mysql
    volumes:
      - "${DATA_DIR}/components/mysql/data:/var/lib/mysql"
      - "/etc/localtime:/etc/localtime"
    environment:
      MYSQL_ROOT_PASSWORD: "${MYSQL_PASSWORD}"
    restart: always
    networks:
      server:
        ipv4_address: ${MYSQL_NETWORK_ADDRESS}

This network was created through Docker Compose, I am not sure whether this fault is related to Compose.

ndeloof commented 10 months ago

I can't tell how you went into this state, but as docker network ls doesn't list this network, this sounds like an issue in docker engine during network removal (running compose down command).

Do you remember the commands you ran before getting stuck with those zombie network interfaces ?

skiffer-git commented 10 months ago

Just docker compose down or up -d, using the above yml file.

skiffer-git commented 10 months ago

May I ask, how can I delete this network?

benciboy commented 10 months ago

Same here,

I have 6 br-xxxxx interface stucked in down state.

4: br-8d8db24b3105: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default 
    link/ether 02:42:54:36:c7:03 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global br-8d8db24b3105
       valid_lft forever preferred_lft forever
    inet6 fc00:f853:ccd:e793::1/64 scope global tentative 
       valid_lft forever preferred_lft forever
    inet6 fe80::1/64 scope link tentative 
       valid_lft forever preferred_lft forever
6: br-b11a9747d62b: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default 
    link/ether 02:42:1e:79:2c:7f brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global br-b11a9747d62b
       valid_lft forever preferred_lft forever
    inet6 fc00:f853:ccd:e793::1/64 scope global tentative 
       valid_lft forever preferred_lft forever
    inet6 fe80::1/64 scope link tentative 
       valid_lft forever preferred_lft forever
7: br-d34a1e755e93: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default 
    link/ether 02:42:85:82:67:7f brd ff:ff:ff:ff:ff:ff
    inet 172.27.0.1/16 brd 172.27.255.255 scope global br-d34a1e755e93
       valid_lft forever preferred_lft forever
8: br-f004bbb2e475: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default 
    link/ether 02:42:f8:8b:87:ac brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global br-f004bbb2e475
       valid_lft forever preferred_lft forever
    inet6 fc00:f853:ccd:e793::1/64 scope global tentative 
       valid_lft forever preferred_lft forever
    inet6 fe80::1/64 scope link tentative 
       valid_lft forever preferred_lft forever
9: br-48cb1492f936: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default 
    link/ether 02:42:91:1f:12:ca brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global br-48cb1492f936
       valid_lft forever preferred_lft forever
    inet6 fc00:f853:ccd:e793::1/64 scope global tentative 
       valid_lft forever preferred_lft forever
    inet6 fe80::1/64 scope link tentative 
       valid_lft forever preferred_lft forever
10: br-4e5159974a04: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default 
    link/ether 02:42:5d:9e:be:c0 brd ff:ff:ff:ff:ff:ff
    inet 192.168.96.1/20 brd 192.168.111.255 scope global br-4e5159974a04
       valid_lft forever preferred_lft forever

all of their mac address starts with 02:42 and not listed at docker network list. I've been removing them with ip and brctl cmds., though after reboot appeared again (systemd respawned them) In the other hand I also using kvm, virtualbox, but those are using different bridge naming. I can't prove that is compose relate, because I'm using docker cmds also, but not specifying network, so that falls to the default docker0.

compose verion 2.2.3

>>docker info
Client: Docker Engine - Community
 Version:    24.0.6
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.11.2
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.2.3
    Path:     /.docker/cli-plugins/docker-compose

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 58
 Server Version: 24.0.6
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 8165feabfdfe38c65b599c4993d227328c231fca
 runc version: v1.1.8-0-g82f18fe
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: builtin
 Kernel Version: 5.14.0-1059-oem
 Operating System: Ubuntu 20.04.6 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 8
 Total Memory: 31.05GiB
 Name: elx71487vp2
 ID: JYKZ:IMQO:JIQE:E54Q:GJYM:5FZC:HD6T:UKL5:HIHY:BTMT:EN5G:DJKS
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: true
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false