Skip to content

[Bug]: #3651

@Clockwork-Muse

Description

@Clockwork-Muse

Testcontainers version

0.42.0

Using the latest Testcontainers version?

Yes

Host OS

Linux, Fedora Silverblue

Host arch

x86-64

Go version

1.25.5

Docker version

Client: Docker Engine - Community
 Version:           29.1.5
 API version:       1.44 (downgraded from 1.52)
 Go version:        go1.25.6
 Git commit:        0e6fee6
 Built:             Fri Jan 16 12:48:57 2026
 OS/Arch:           linux/amd64
 Context:           default

Server: linux/amd64/fedora-43
 Podman Engine:
  Version:          5.8.1
  APIVersion:       5.8.1
  Arch:             amd64
  BuildTime:        2026-03-10T17:00:00-07:00
  Experimental:     false
  GitCommit:        c6077f645788743258a1a749f8005b4fb3cbe533
  GoVersion:        go1.25.7 X:nodwarf5
  KernelVersion:    6.19.11-200.fc43.x86_64
  MinAPIVersion:    4.0.0
  Os:               linux
 Conmon:
  Version:          conmon version 2.2.1, commit: 
  Package:          conmon-2.2.1-2.fc43.x86_64
 OCI Runtime (crun):
  Version:          crun version 1.27
commit: a718a92cc9a94955a5a550b6fdec1378c247ec50
rundir: /run/user/1000/crun
spec: 1.0.0
+SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +CRIU +LIBKRUN +WASM:wasmedge +YAJL
  Package:          crun-1.27-1.fc43.x86_64
 Engine:
  Version:          5.8.1
  API version:      1.44 (minimum version 1.24)
  Go version:       
  Git commit:       
  Built:            
  OS/Arch:          linux/amd64
  Experimental:

Docker info

Client: Docker Engine - Community
 Version:    29.1.5
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.30.1
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.40.3
    Path:     /usr/libexec/docker/cli-plugins/docker-compose

Server:
 Containers: 1
  Running: 1
  Paused: 0
  Stopped: 0
 Images: 24
 Server Version: 5.8.1
 Storage Driver: overlay
  Using metacopy: false
  Supports shifting: false
  Supports volatile: true
  Backing Filesystem: btrfs
  Supports d_type: true
  Native Overlay Diff: true
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge macvlan ipvlan
  Log: k8s-file none passthrough journald
 Swarm: inactive
 Runtimes: kata krun runc crun-wasm ocijail runj runsc youki crun crun-vm
 Default Runtime: crun
 Init Binary: 
 containerd version: 
 runc version: 
 init version: 
 Security Options:
  seccomp
   Profile: default
  rootless
  selinux
 Kernel Version: 6.19.11-200.fc43.x86_64
 Operating System: fedora
 OSType: linux
 Architecture: amd64
 CPUs: 16
 Total Memory: 30.45GiB
 Name: mystery
 ID: 6cd81103-c9b5-4f09-81e4-38561b148f4f
 Docker Root Dir: /var/home/xzero/.local/share/containers/storage
 Debug Mode: false
 Experimental: true
 Live Restore Enabled: false
 Product License: Apache-2.0
 Default Address Pools:
   Base: 10.89.0.0/16, Size: 24
   Base: 10.90.0.0/15, Size: 24
   Base: 10.92.0.0/14, Size: 24
   Base: 10.96.0.0/11, Size: 24
   Base: 10.128.0.0/9, Size: 24

What happened?

The registry module fails to start during test suite startup, causing the test engine to kill the test process.

This seems to be due to the particular wait strategy chosen; I can replace it with:

testcontainers.WithWaitStrategy(
	wait.ForMappedPort("5000/tcp"),
),

.... and the container starts right up.

Relevant log output

Running tool: /usr/local/go/bin/go test -test.fullpath=true -timeout 30s -run ^TestPusherSuite$ -testify.m ^(TestPushSetup)$ sigs.k8s.io/kustomize/api/internal/oci

--- FAIL: TestPusherSuite (20.48s)
    /workspaces/kustomize/api/internal/oci/pusher_test.go:86: run registry: generic container: start container: started hook: wait until ready: context deadline exceeded
FAIL
exit status 1
FAIL	sigs.k8s.io/kustomize/api/internal/oci	20.484s

Additional information

I'm running inside a devcontainer running on podman, with the docker-outside-of-docker feature installed.
For the most part this works really well; I can run all commands as docker ... inside the container (which doesn't even have the podman cli).
For some reason some of the wait strategies seem to be expecting something about network state that renders some of the wait strategies unavailable.

(Also, I have to disable Ryuk because this all is running rootless, but 🤷 )

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugAn issue with the library

    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