-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Description
Description
When using docker compose config, the command sometimes fails with fatal error: concurrent map writes.
This seems to happen more often when there are more services.
Steps To Reproduce
Write a compose-many.yml with the following:
services:
a:
image: docker.io/library/python:3.12
b:
image: docker.io/library/python:3.11@sha256:4f7a334f9b8941fc7779e17541eaa0fd6043bdb63de1f5b0ee634e7991706e63
c:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178
d:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178@sha256:68cbbef870511ceb90882f0522353905e8ff249c8f1fe03798b912e50ffe1638
e:
image: docker.io/library/python:3.12
f:
image: docker.io/library/python:3.11@sha256:4f7a334f9b8941fc7779e17541eaa0fd6043bdb63de1f5b0ee634e7991706e63
g:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178
h:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178@sha256:68cbbef870511ceb90882f0522353905e8ff249c8f1fe03798b912e50ffe1638
i:
image: docker.io/library/python:3.12
j:
image: docker.io/library/python:3.11@sha256:4f7a334f9b8941fc7779e17541eaa0fd6043bdb63de1f5b0ee634e7991706e63
k:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178
l:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178@sha256:68cbbef870511ceb90882f0522353905e8ff249c8f1fe03798b912e50ffe1638
m:
image: docker.io/library/python:3.12
"n":
image: docker.io/library/python:3.11@sha256:4f7a334f9b8941fc7779e17541eaa0fd6043bdb63de1f5b0ee634e7991706e63
o:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178
p:
image: ghcr.io/nginxinc/nginx-loadbalancer-kubernetes:178@sha256:68cbbef870511ceb90882f0522353905e8ff249c8f1fe03798b912e50ffe1638Run the following command:
while docker compose -f compose-many.yml config --resolve-image-digests; do true; doneWithin a few iterations the command will fail with fatal error: concurrent map writes
Compose Version
/ # docker-compose version
zsh: command not found: docker-compose
/ # docker compose version
Docker Compose version v2.24.6
Docker Environment
Client: Docker Engine - Community
Version: 25.0.3
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.12.1
Path: /usr/libexec/docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v2.24.5
Path: /usr/libexec/docker/cli-plugins/docker-compose
Server:
Containers: 17
Running: 15
Paused: 0
Stopped: 2
Images: 91
Server Version: 25.0.3
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: systemd
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version: ae07eda36dd25f8a1b98dfbf587313b99c0190bb
runc version: v1.1.12-0-g51d5e94
init version: de40ad0
Security Options:
apparmor
seccomp
Profile: builtin
cgroupns
Kernel Version: 5.15.0-94-generic
Operating System: Ubuntu 22.04.3 LTS
OSType: linux
Architecture: x86_64
CPUs: 10
Total Memory: 11.59GiB
Name: usec-dev
ID: 5405e8d8-5b5b-4a15-a2c4-f5a233c80fa0
Docker Root Dir: /var/lib/docker
Debug Mode: false
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
Anything else?
Output
$ docker compose -f compose-many.yml config --resolve-image-digests fatal error: concurrent map writesgoroutine 363 [running]:
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:519 +0x13b
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 1 [semacquire]:
sync.runtime_Semacquire(0x2?)
runtime/sema.go:62 +0x25
sync.(*WaitGroup).Wait(0xc00064e2a0?)
sync/waitgroup.go:116 +0x48
golang.org/x/sync/errgroup.(*Group).Wait(0xc0004582c0)
golang.org/x/[email protected]/errgroup/errgroup.go:56 +0x25
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved(0x1010101006256e8?, 0xc0006a1e00)
github.com/compose-spec/compose-go/[email protected]/types/project.go:523 +0x1c6
github.com/docker/compose/v2/pkg/compose.(*composeService).Config(0xc0004cb770, {0x25e24c0?, 0xc0004280a0}, 0xc000546280, {{0x226c7d4, 0x4}, {0x0, 0x0}, 0x1})
github.com/docker/compose/v2/pkg/compose/compose.go:153 +0xcb
github.com/docker/compose/v2/cmd/compose.runConfig({0x25e24c0, 0xc0004280a0}, {0x25f5640?, 0xc00002ef00?}, {0x25fdf80, 0xc0004cb770}, {0xc00065ff40, {0x226c7d4, 0x4}, {0x0, ...}, ...}, ...)
github.com/docker/compose/v2/cmd/compose/config.go:133 +0x15e
github.com/docker/compose/v2/cmd/compose.configCommand.func2({0x25e24c0?, 0xc0004280a0?}, {0xc0004c7960?, 0xc0000061a0?, 0x1c4fa59?})
github.com/docker/compose/v2/cmd/compose/config.go:103 +0xf7
github.com/docker/compose/v2/cmd/compose.configCommand.Adapt.func4({0x25e24c0?, 0xc0004280a0?}, 0x2?, {0xc0004c7960?, 0x0?, 0x0?})
github.com/docker/compose/v2/cmd/compose/compose.go:108 +0x30
github.com/docker/compose/v2/cmd/compose.configCommand.Adapt.AdaptCmd.func7(0x0?, {0xc0004c7960, 0x0, 0x1})
github.com/docker/compose/v2/cmd/compose/compose.go:87 +0x14e
github.com/docker/compose/v2/cmd/cmdtrace.Setup.wrapRunE.func2(0xc00002f800?, {0xc0004c7960?, 0x0?, 0x1?})
github.com/docker/compose/v2/cmd/cmdtrace/cmd_span.go:84 +0x65
github.com/spf13/cobra.(*Command).execute(0xc000005b00, {0xc0000724a0, 0x1, 0x1})
github.com/spf13/[email protected]/command.go:983 +0xabc
github.com/spf13/cobra.(*Command).ExecuteC(0xc000540c00)
github.com/spf13/[email protected]/command.go:1115 +0x3ff
github.com/spf13/cobra.(*Command).Execute(...)
github.com/spf13/[email protected]/command.go:1039
github.com/docker/cli/cli-plugins/plugin.RunPlugin(0x1c76033?, 0xc00039b500, {{0x226d2ec, 0x5}, {0x2276f47, 0xb}, {0x25b9210, 0x7}, {0x0, 0x0}, ...})
github.com/docker/[email protected]+incompatible/cli-plugins/plugin/plugin.go:64 +0x10e
github.com/docker/cli/cli-plugins/plugin.Run(0x23a9698, {{0x226d2ec, 0x5}, {0x2276f47, 0xb}, {0x25b9210, 0x7}, {0x0, 0x0}, {0x0, ...}})
github.com/docker/[email protected]+incompatible/cli-plugins/plugin/plugin.go:77 +0xe5
main.pluginMain()
github.com/docker/compose/v2/cmd/main.go:37 +0xa5
main.main()
github.com/docker/compose/v2/cmd/main.go:94 +0x19cgoroutine 7 [IO wait]:
internal/poll.runtime_pollWait(0x7f43ba1a8e58, 0x72)
runtime/netpoll.go:343 +0x85
internal/poll.(*pollDesc).wait(0xc00050cb00?, 0xc0005097bf?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x27
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00050cb00, {0xc0005097bf, 0x1, 0x1})
internal/poll/fd_unix.go:164 +0x27a
net.(*netFD).Read(0xc00050cb00, {0xc0005097bf?, 0x0?, 0x0?})
net/fd_posix.go:55 +0x25
net.(*conn).Read(0xc0004c3d38, {0xc0005097bf?, 0x0?, 0x0?})
net/net.go:179 +0x45
github.com/docker/cli/cli-plugins/socket.ConnectAndWait.func1()
github.com/docker/[email protected]+incompatible/cli-plugins/socket/socket.go:65 +0x45
created by github.com/docker/cli/cli-plugins/socket.ConnectAndWait in goroutine 1
github.com/docker/[email protected]+incompatible/cli-plugins/socket/socket.go:62 +0x118goroutine 9 [IO wait]:
internal/poll.runtime_pollWait(0x7f43ba1a8d60, 0x72)
runtime/netpoll.go:343 +0x85
internal/poll.(*pollDesc).wait(0xc00050cd00?, 0xc000558000?, 0x0)
internal/poll/fd_poll_runtime.go:84 +0x27
internal/poll.(*pollDesc).waitRead(...)
internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00050cd00, {0xc000558000, 0x1000, 0x1000})
internal/poll/fd_unix.go:164 +0x27a
net.(*netFD).Read(0xc00050cd00, {0xc000558000?, 0xc0000a4ec8?, 0xc000195560?})
net/fd_posix.go:55 +0x25
net.(*conn).Read(0xc0004c3e20, {0xc000558000?, 0x0?, 0x0?})
net/net.go:179 +0x45
net/http.(*persistConn).Read(0xc000443d40, {0xc000558000?, 0x44fdc0?, 0xc0000a4ec8?})
net/http/transport.go:1954 +0x4a
bufio.(*Reader).fill(0xc000195740)
bufio/bufio.go:113 +0x103
bufio.(*Reader).Peek(0xc000195740, 0x1)
bufio/bufio.go:151 +0x53
net/http.(*persistConn).readLoop(0xc000443d40)
net/http/transport.go:2118 +0x1b9
created by net/http.(*Transport).dialConn in goroutine 8
net/http/transport.go:1776 +0x169fgoroutine 10 [runnable]:
fmt.(*pp).doPrintf(0xc000543930, {0x22804cb, 0x10}, {0xc0005b7e88?, 0x2, 0x2})
fmt/print.go:1021 +0x11bf
fmt.Fprintf({0x25bdf00, 0xc0001ab380}, {0x22804cb, 0x10}, {0xc0005b7e88, 0x2, 0x2})
fmt/print.go:224 +0x71
net/http.(*Request).write(0xc00002e400, {0x25bdf00, 0xc0001ab380}, 0x0, 0x0, 0x0)
net/http/request.go:651 +0x645
net/http.(*persistConn).writeLoop(0xc000443d40)
net/http/transport.go:2424 +0x18f
created by net/http.(*Transport).dialConn in goroutine 8
net/http/transport.go:1777 +0x16f1goroutine 35 [syscall]:
os/signal.signal_recv()
runtime/sigqueue.go:152 +0x29
os/signal.loop()
os/signal/signal_unix.go:23 +0x13
created by os/signal.Notify.func1.1 in goroutine 1
os/signal/signal.go:151 +0x1fgoroutine 36 [chan receive]:
github.com/docker/compose/v2/cmd/compose.configCommand.Adapt.AdaptCmd.func6.1()
github.com/docker/compose/v2/cmd/compose/compose.go:81 +0x27
created by github.com/docker/compose/v2/cmd/compose.configCommand.Adapt.AdaptCmd.func6 in goroutine 1
github.com/docker/compose/v2/cmd/compose/compose.go:80 +0x119goroutine 37 [chan receive]:
github.com/docker/compose/v2/cmd/compose.configCommand.Adapt.AdaptCmd.func7.1()
github.com/docker/compose/v2/cmd/compose/compose.go:81 +0x27
created by github.com/docker/compose/v2/cmd/compose.configCommand.Adapt.AdaptCmd.func7 in goroutine 1
github.com/docker/compose/v2/cmd/compose/compose.go:80 +0x119goroutine 365 [runnable]:
regexp.(*Regexp).FindStringSubmatch(0xc0002957c0, {0xc00088a000, 0x65})
regexp/regexp.go:1050 +0xba
github.com/distribution/reference.Parse({0xc00088a000, 0x65})
github.com/distribution/[email protected]/reference.go:192 +0x3f
github.com/distribution/reference.ParseNormalizedNamed({0xc000240540, 0x65})
github.com/distribution/[email protected]/normalize.go:71 +0x194
github.com/distribution/reference.ParseDockerRef({0xc000240540?, 0x0?})
github.com/distribution/[email protected]/normalize.go:108 +0x1c
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:501 +0x45
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 364 [runnable]:
regexp/syntax.(*Inst).MatchRunePos(0xc0001ef040?, 0x66?)
regexp/syntax/prog.go:204 +0x1d9
regexp/syntax.(*Inst).MatchRune(...)
regexp/syntax/prog.go:196
regexp.(*Regexp).doOnePass(0xc000295400, {0x0?, 0x0}, {0x0, 0x0, 0x0}, {0xc000792033, 0x47}, 0x0, 0x0, ...)
regexp/exec.go:458 +0x6ec
regexp.(*Regexp).doExecute(0xc0007ae020?, {0x0?, 0x0?}, {0x0?, 0x0?, 0x7f439966d180?}, {0xc000792033?, 0x418bdc?}, 0xc00089a000?, 0x0, ...)
regexp/exec.go:532 +0x2a8
regexp.(*Regexp).doMatch(...)
regexp/exec.go:514
regexp.(*Regexp).MatchString(...)
regexp/regexp.go:533
github.com/distribution/reference.WithDigest({0x25c7e88, 0xc0007ae020}, {0xc000792033, 0x47})
github.com/distribution/[email protected]/reference.go:299 +0x6a
github.com/distribution/reference.ParseDockerRef({0xc000069200?, 0x4?})
github.com/distribution/[email protected]/normalize.go:118 +0xa5
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:501 +0x45
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 366 [select]:
net.(*Resolver).lookupIPAddr(0x377c440, {0x25e2220?, 0x37b8480}, {0x226bce2, 0x2}, {0xc0004760c0, 0x7})
net/lookup.go:332 +0x3fe
net.(*Resolver).LookupIPAddr(...)
net/lookup.go:210
net.LookupIP({0xc0004760c0?, 0x7?})
net/lookup.go:196 +0x49
github.com/docker/docker/registry.isCIDRMatch({0xc0004c38a8, 0x1, 0xc0004760c0?}, {0xc0004760c0, 0x7})
github.com/docker/[email protected]+incompatible/registry/config.go:298 +0x76
github.com/docker/docker/registry.(*serviceConfig).isSecureIndex(...)
github.com/docker/[email protected]+incompatible/registry/config.go:285
github.com/docker/docker/registry.newIndexInfo(0xc000396c40, {0xc0004760c0?, 0x774bdb?})
github.com/docker/[email protected]+incompatible/registry/config.go:402 +0xb4
github.com/docker/docker/registry.newRepositoryInfo(0xc0000abc08?, {0x25c7ed8, 0xc00049a0a0})
github.com/docker/[email protected]+incompatible/registry/config.go:418 +0x3c
github.com/docker/docker/registry.ParseRepositoryInfo(...)
github.com/docker/[email protected]+incompatible/registry/config.go:436
github.com/docker/compose/v2/pkg/compose.encodedAuth({0x25c7ed8?, 0xc00049a0a0?}, {0x25bd9e0, 0xc0004cc180})
github.com/docker/compose/v2/pkg/compose/pull.go:246 +0x59
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc00049a0a0})
github.com/docker/compose/v2/pkg/compose/compose.go:154 +0x85
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 354 [select]:
net.(*Resolver).lookupIPAddr(0x377c440, {0x25e2220?, 0x37b8480}, {0x226bce2, 0x2}, {0xc0000603c0, 0x7})
net/lookup.go:332 +0x3fe
net.(*Resolver).LookupIPAddr(...)
net/lookup.go:210
net.LookupIP({0xc0000603c0?, 0x7?})
net/lookup.go:196 +0x49
github.com/docker/docker/registry.isCIDRMatch({0xc0004c38a8, 0x1, 0xc0000603c0?}, {0xc0000603c0, 0x7})
github.com/docker/[email protected]+incompatible/registry/config.go:298 +0x76
github.com/docker/docker/registry.(*serviceConfig).isSecureIndex(...)
github.com/docker/[email protected]+incompatible/registry/config.go:285
github.com/docker/docker/registry.newIndexInfo(0xc000396c40, {0xc0000603c0?, 0x7f4402538a68?})
github.com/docker/[email protected]+incompatible/registry/config.go:402 +0xb4
github.com/docker/docker/registry.newRepositoryInfo(0xc0005c7c08?, {0x25c7ed8, 0xc0005b8020})
github.com/docker/[email protected]+incompatible/registry/config.go:418 +0x3c
github.com/docker/docker/registry.ParseRepositoryInfo(...)
github.com/docker/[email protected]+incompatible/registry/config.go:436
github.com/docker/compose/v2/pkg/compose.encodedAuth({0x25c7ed8?, 0xc0005b8020?}, {0x25bd9e0, 0xc0004cc180})
github.com/docker/compose/v2/pkg/compose/pull.go:246 +0x59
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc0005b8020})
github.com/docker/compose/v2/pkg/compose/compose.go:154 +0x85
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 362 [runnable]:
sort.Strings(...)
sort/sort.go:176
net/url.Values.Encode(0xc0008819b0)
net/url/url.go:974 +0x1b3
github.com/docker/docker/client.(*Client).getAPIPath(0x30?, {0x25e24c0?, 0xc0004280a0?}, {0xc0004c02d0, 0x30}, 0x25b3a88?)
github.com/docker/[email protected]+incompatible/client/client.go:285 +0x18c
github.com/docker/docker/client.(*Client).sendRequest(0x227df46?, {0x25e24c0, 0xc0004280a0}, {0x226c06d, 0x3}, {0xc0004c02d0?, 0xc0005b4a38?}, 0x18?, {0x0, 0x0}, ...)
github.com/docker/[email protected]+incompatible/client/request.go:120 +0x6f
github.com/docker/docker/client.(*Client).get(...)
github.com/docker/[email protected]+incompatible/client/request.go:37
github.com/docker/docker/client.(*Client).DistributionInspect(0xc0005b4db8?, {0x25e24c0, 0xc0004280a0}, {0xc0002fe140, 0x1d}, {0xc0004a001c, 0x4})
github.com/docker/[email protected]+incompatible/client/distribution_inspect.go:31 +0x31a
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc00049a1a0})
github.com/docker/compose/v2/pkg/compose/compose.go:158 +0x13a
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 361 [select]:
net.(*Resolver).lookupIPAddr(0x377c440, {0x25e2220?, 0x37b8480}, {0x226bce2, 0x2}, {0xc000248000, 0x7})
net/lookup.go:332 +0x3fe
net.(*Resolver).LookupIPAddr(...)
net/lookup.go:210
net.LookupIP({0xc000248000?, 0x7?})
net/lookup.go:196 +0x49
github.com/docker/docker/registry.isCIDRMatch({0xc0004c38a8, 0x1, 0xc000248000?}, {0xc000248000, 0x7})
github.com/docker/[email protected]+incompatible/registry/config.go:298 +0x76
github.com/docker/docker/registry.(*serviceConfig).isSecureIndex(...)
github.com/docker/[email protected]+incompatible/registry/config.go:285
github.com/docker/docker/registry.newIndexInfo(0xc000396c40, {0xc000248000?, 0x7f4402538f18?})
github.com/docker/[email protected]+incompatible/registry/config.go:402 +0xb4
github.com/docker/docker/registry.newRepositoryInfo(0xc0005c3c08?, {0x25c7ed8, 0xc00060e020})
github.com/docker/[email protected]+incompatible/registry/config.go:418 +0x3c
github.com/docker/docker/registry.ParseRepositoryInfo(...)
github.com/docker/[email protected]+incompatible/registry/config.go:436
github.com/docker/compose/v2/pkg/compose.encodedAuth({0x25c7ed8?, 0xc00060e020?}, {0x25bd9e0, 0xc0004cc180})
github.com/docker/compose/v2/pkg/compose/pull.go:246 +0x59
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc00060e020})
github.com/docker/compose/v2/pkg/compose/compose.go:154 +0x85
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 359 [select]:
net.(*Resolver).lookupIPAddr(0x377c440, {0x25e2220?, 0x37b8480}, {0x226bce2, 0x2}, {0xc000688000, 0x7})
net/lookup.go:332 +0x3fe
net.(*Resolver).LookupIPAddr(...)
net/lookup.go:210
net.LookupIP({0xc000688000?, 0x7?})
net/lookup.go:196 +0x49
github.com/docker/docker/registry.isCIDRMatch({0xc0004c38a8, 0x1, 0xc000688000?}, {0xc000688000, 0x7})
github.com/docker/[email protected]+incompatible/registry/config.go:298 +0x76
github.com/docker/docker/registry.(*serviceConfig).isSecureIndex(...)
github.com/docker/[email protected]+incompatible/registry/config.go:285
github.com/docker/docker/registry.newIndexInfo(0xc000396c40, {0xc000688000?, 0x7f44025393c8?})
github.com/docker/[email protected]+incompatible/registry/config.go:402 +0xb4
github.com/docker/docker/registry.newRepositoryInfo(0xc000705c08?, {0x25c7ed8, 0xc0006b8020})
github.com/docker/[email protected]+incompatible/registry/config.go:418 +0x3c
github.com/docker/docker/registry.ParseRepositoryInfo(...)
github.com/docker/[email protected]+incompatible/registry/config.go:436
github.com/docker/compose/v2/pkg/compose.encodedAuth({0x25c7ed8?, 0xc0006b8020?}, {0x25bd9e0, 0xc0004cc180})
github.com/docker/compose/v2/pkg/compose/pull.go:246 +0x59
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc0006b8020})
github.com/docker/compose/v2/pkg/compose/compose.go:154 +0x85
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 358 [runnable]:
sort.Strings(...)
sort/sort.go:176
net/url.Values.Encode(0xc0008859b0)
net/url/url.go:974 +0x1b3
github.com/docker/docker/client.(*Client).getAPIPath(0x30?, {0x25e24c0?, 0xc0004280a0?}, {0xc0006640c0, 0x30}, 0x25b3a88?)
github.com/docker/[email protected]+incompatible/client/client.go:285 +0x18c
github.com/docker/docker/client.(*Client).sendRequest(0x227df46?, {0x25e24c0, 0xc0004280a0}, {0x226c06d, 0x3}, {0xc0006640c0?, 0xc000706a38?}, 0x18?, {0x0, 0x0}, ...)
github.com/docker/[email protected]+incompatible/client/request.go:120 +0x6f
github.com/docker/docker/client.(*Client).get(...)
github.com/docker/[email protected]+incompatible/client/request.go:37
github.com/docker/docker/client.(*Client).DistributionInspect(0xc000706db8?, {0x25e24c0, 0xc0004280a0}, {0xc0004f4480, 0x1d}, {0xc0006ce01c, 0x4})
github.com/docker/[email protected]+incompatible/client/distribution_inspect.go:31 +0x31a
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc0006b80a0})
github.com/docker/compose/v2/pkg/compose/compose.go:158 +0x13a
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 357 [select]:
net/http.(*persistConn).roundTrip(0xc000443d40, 0xc000458380)
net/http/transport.go:2652 +0x979
net/http.(*Transport).roundTrip(0xc00003e3c0, 0xc00002e400)
net/http/transport.go:604 +0x79a
net/http.(*Transport).RoundTrip(0x3763420?, 0x25e2488?)
net/http/roundtrip.go:17 +0x13
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*Transport).RoundTrip(0xc000211030, 0xc00002e300)
go.opentelemetry.io/contrib/instrumentation/net/http/[email protected]/transport.go:116 +0x52b
net/http.send(0xc00002e300, {0x25bd740, 0xc000211030}, {0xc000685401?, 0x41b00b?, 0x0?})
net/http/client.go:260 +0x606
net/http.(*Client).send(0xc0005336b0, 0xc00002e300, {0xc000685450?, 0x41f816?, 0x0?})
net/http/client.go:181 +0x98
net/http.(*Client).do(0xc0005336b0, 0xc00002e300)
net/http/client.go:724 +0x912
net/http.(*Client).Do(...)
net/http/client.go:590
github.com/docker/docker/client.(*Client).doRequest(0xc0005461e0, 0xc0005461e0?)
github.com/docker/[email protected]+incompatible/client/request.go:140 +0x7c
github.com/docker/docker/client.(*Client).sendRequest(0x227df46?, {0x25e24c0, 0xc0004280a0}, {0x226c06d, 0x3}, {0xc0001221e0?, 0xc0000a5a38?}, 0x18?, {0x0, 0x0}, ...)
github.com/docker/[email protected]+incompatible/client/request.go:125 +0xd6
github.com/docker/docker/client.(*Client).get(...)
github.com/docker/[email protected]+incompatible/client/request.go:37
github.com/docker/docker/client.(*Client).DistributionInspect(0x40fa5f?, {0x25e24c0, 0xc0004280a0}, {0xc000392340, 0x1d}, {0xc000843b84, 0x4})
github.com/docker/[email protected]+incompatible/client/distribution_inspect.go:31 +0x31a
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc00042f640})
github.com/docker/compose/v2/pkg/compose/compose.go:158 +0x13a
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96goroutine 289 [runnable]:
net/http.(*Transport).getConn(0xc00003e3c0, 0xc00071e080, {{}, 0x0, {0x226c73c, 0x4}, {0xc0000b4ac8, 0x17}, 0x0})
net/http/transport.go:1387 +0x46a
net/http.(*Transport).roundTrip(0xc00003e3c0, 0xc0000ca700)
net/http/transport.go:591 +0x73a
net/http.(*Transport).RoundTrip(0x3763420?, 0x25e2488?)
net/http/roundtrip.go:17 +0x13
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*Transport).RoundTrip(0xc000211030, 0xc0008aa000)
go.opentelemetry.io/contrib/instrumentation/net/http/[email protected]/transport.go:116 +0x52b
net/http.send(0xc0008aa000, {0x25bd740, 0xc000211030}, {0xc000681401?, 0x41b00b?, 0x0?})
net/http/client.go:260 +0x606
net/http.(*Client).send(0xc0005336b0, 0xc0008aa000, {0xc000681450?, 0x41f816?, 0x0?})
net/http/client.go:181 +0x98
net/http.(*Client).do(0xc0005336b0, 0xc0008aa000)
net/http/client.go:724 +0x912
net/http.(*Client).Do(...)
net/http/client.go:590
github.com/docker/docker/client.(*Client).doRequest(0xc0005461e0, 0xc0005461e0?)
github.com/docker/[email protected]+incompatible/client/request.go:140 +0x7c
github.com/docker/docker/client.(*Client).sendRequest(0x227df46?, {0x25e24c0, 0xc0004280a0}, {0x226c06d, 0x3}, {0xc000438000?, 0x7f4399f61598?}, 0x42d5a0?, {0x0, 0x0}, ...)
github.com/docker/[email protected]+incompatible/client/request.go:125 +0xd6
github.com/docker/docker/client.(*Client).get(...)
github.com/docker/[email protected]+incompatible/client/request.go:37
github.com/docker/docker/client.(*Client).DistributionInspect(0xc0005b6db8?, {0x25e24c0, 0xc0004280a0}, {0xc00005e380, 0x1d}, {0xc00053400c, 0x4})
github.com/docker/[email protected]+incompatible/client/distribution_inspect.go:31 +0x31a
github.com/docker/compose/v2/pkg/compose.(*composeService).Config.func1({0x25c7ed8, 0xc000512020})
github.com/docker/compose/v2/pkg/compose/compose.go:158 +0x13a
github.com/compose-spec/compose-go/v2/types.(*Project).WithImagesResolved.func1()
github.com/compose-spec/compose-go/[email protected]/types/project.go:508 +0x8f
golang.org/x/sync/errgroup.(*Group).Go.func1()
golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96
goroutine 327 [runnable]:
syscall.Syscall(0xc000612000?, 0xc0005c8738?, 0x412365?, 0xc0001fa5b0?)
syscall/syscall_linux.go:69 +0x25
syscall.Fstat(0x10?, 0x7f43ba1ae040?)
syscall/zsyscall_linux_amd64.go:1106 +0x2b
internal/poll.(*FD).Fstat.func1(...)
internal/poll/fd_unix.go:643
internal/poll.ignoringEINTR(...)
internal/poll/fd_posix.go:74
internal/poll.(*FD).Fstat(0x228037b?, 0xc0001fa5e8)
internal/poll/fd_unix.go:642 +0xf7
os.(*File).Stat(0xc00059e010)
os/stat_unix.go:20 +0x47
net.dnsReadConfig({0x228037b, 0x10})
net/dnsconfig_unix.go:32 +0x1b1
net.(*resolverConfig).init(0x3786500)
net/dnsclient_unix.go:360 +0x28
sync.(*Once).doSlow(0x51aa87?, 0x377c9a0?)
sync/once.go:74 +0xbf
sync.(*Once).Do(...)
sync/once.go:65
net.(*resolverConfig).tryUpdate(0x3786500, {0x228037b, 0x10})
net/dnsclient_unix.go:372 +0x5f
net.getSystemDNSConfig(...)
net/dnsclient_unix.go:352
net.(*conf).lookupOrder(0x3753220, 0xc0005c8bf0?, {0xc0000603c0, 0x7})
net/conf.go:268 +0x1bf
net.(*conf).hostLookupOrder(0x0?, 0xd?, {0xc0000603c0?, 0x411be5?})
net/conf.go:212 +0x93
net.(*Resolver).lookupIP(0x377c440, {0x25e24c0, 0xc0001b60f0}, {0x226bce2, 0x2}, {0xc0000603c0, 0x7})
net/lookup_unix.go:68 +0xde
net.glob..func1({0x25e24c0?, 0xc0001b60f0?}, 0xa5dd45?, {0x226bce2?, 0x0?}, {0xc0000603c0?, 0x0?})
net/hook.go:23 +0x37
net.(*Resolver).lookupIPAddr.func1()
net/lookup.go:324 +0x3a
internal/singleflight.(*Group).doCall(0x377c450, 0xc0001b6140, {0xc0005be000, 0xa}, 0xc000506798?)
internal/singleflight/singleflight.go:93 +0x35
created by internal/singleflight.(*Group).DoChan in goroutine 354
internal/singleflight/singleflight.go:86 +0x2e9