Skip to content

[BUG] docker-compose up fails after removing a diverged network #12897

@andrii-telesh-readdle

Description

@andrii-telesh-readdle

Description

The network config change detection that introduced in PR #12267 has a problem recreating containers using docker-compose up command. The method removeDivergedNetwork /pkg/compose/create.go:1398 stops the containers, removes network and then it is trying to start the container.

Actual behavior
Container failed to start.

$ docker-compose up -d
[+] Running 1/2
 ⠦ Container diverged-network-alpine-test-1  Starting 0.8s 
 ✔ Network diverged-network_default          Created 0.0s 
Error response from daemon: failed to set up container networking: network 4ee23502aca6e08e3df03d63d383dfc0412fb077caba3ba0e8776c4c2523f073 not found

Expected behavior
Container started successfully.

$ docker-compose up -d
[+] Running 2/2
 ✔ Container diverged-network-alpine-test-1  Started   0.3s 
 ✔ Network diverged-network_default          Recreated   

Steps To Reproduce

  1. Use the next docker-compose.yaml file
name: diverged-network
services:
  alpine-test:
    image: alpine:latest
    command: [ "sh", "-c", "trap 'exit 0' SIGTERM; while true; do echo 'Alpine container running...'; sleep 1; done" ]

networks:
  default:
    labels:
      foo: bar
  1. Start the stack
$ docker-compose up -d
[+] Running 2/2
 ✔ Container diverged-network-alpine-test-1  Started   0.3s 
 ✔ Network diverged-network_default          Created   
  1. Update docker-compose.yaml file
name: diverged-network
services:
  alpine-test:
    image: alpine:latest
    command: [ "sh", "-c", "trap 'exit 0' SIGTERM; while true; do echo 'Alpine container running...'; sleep 1; done" ]

networks:
  default:
    labels:
      foo: baz # updated here
  1. Up the stack again
docker-compose up -d
[+] Running 1/2
 ⠦ Container diverged-network-alpine-test-1  Starting 0.8s 
 ✔ Network diverged-network_default          Created  0.0s 
Error response from daemon: failed to set up container networking: network 4b013406cba41e10ab8781457ecbaceb556e23f4e1b9a9839f77d7fc034ced60 not found

Compose Version

$ docker compose version
Docker Compose version v2.36.0-desktop.1



$ docker-compose version
Docker Compose version v2.35.1-desktop.1

Docker Environment

Client:
 Version:    28.1.1
 Context:    desktop-linux
 Debug Mode: false
 Plugins:
  ai: Docker AI Agent - Ask Gordon (Docker Inc.)
    Version:  v1.1.7
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-ai
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.23.0-desktop.1
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-buildx
  cloud: Docker Cloud (Docker Inc.)
    Version:  v0.3.0
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-cloud
  compose: Docker Compose (Docker Inc.)
    Version:  v2.36.0-desktop.1
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-compose
  debug: Get a shell into any image or container (Docker Inc.)
    Version:  0.0.38
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-debug
  desktop: Docker Desktop commands (Docker Inc.)
    Version:  v0.1.8
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-desktop
  dev: Docker Dev Environments (Docker Inc.)
    Version:  v0.1.2
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-dev
  extension: Manages Docker extensions (Docker Inc.)
    Version:  v0.2.27
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-extension
  init: Creates Docker-related starter files for your project (Docker Inc.)
    Version:  v1.4.0
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-init
  mcp: Docker MCP Plugin (Docker Inc.)
    Version:  dev
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-mcp
  model: Docker Model Runner (Docker Inc.)
    Version:  v0.1.23
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-model
  sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.)
    Version:  0.6.0
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-sbom
  scout: Docker Scout (Docker Inc.)
    Version:  v1.18.1
    Path:     /Users/REDACTED/.docker/cli-plugins/docker-scout

Server:
 Containers: 10
  Running: 7
  Paused: 0
  Stopped: 3
 Images: 7
 Server Version: 28.1.1
 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: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 CDI spec directories:
  /etc/cdi
  /var/run/cdi
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 05044ec0a9a75232cad458027ca83437aae3f4da
 runc version: v1.2.5-0-g59923ef
 init version: de40ad0
 Security Options:
  seccomp
   Profile: unconfined
  cgroupns
 Kernel Version: 6.10.14-linuxkit
 Operating System: Docker Desktop
 OSType: linux
 Architecture: aarch64
 CPUs: 14
 Total Memory: 23.43GiB
 Name: docker-desktop
 ID: ec6a2600-d275-4a09-aa66-bf0dd7cd8ecb
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 HTTP Proxy: http.docker.internal:3128
 HTTPS Proxy: http.docker.internal:3128
 No Proxy: hubproxy.docker.internal
 Labels:
  com.docker.desktop.address=unix:///Users/REDACTED/Library/Containers/com.docker.docker/Data/docker-cli.sock
 Experimental: false
 Insecure Registries:
  hubproxy.docker.internal:5555
  ::1/128
  127.0.0.0/8
 Live Restore Enabled: false

WARNING: DOCKER_INSECURE_NO_IPTABLES_RAW is set
WARNING: daemon is not using the default seccomp profile

Anything else?

No response

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions