kubernetes-sigs / kind

Kubernetes IN Docker - local clusters for testing Kubernetes
https://kind.sigs.k8s.io/
Apache License 2.0
13.48k stars 1.56k forks source link

KIND breaks docker configurations on 0.21.0 with Apple M3 Chip #3519

Closed ivelichkovich closed 8 months ago

ivelichkovich commented 8 months ago

If I launch a 0.21.0 KIND cluster it breaks docker run for some containers.

What happened:

Restart docker desktop (version v4.27.2), docker version (Docker version 25.0.3, build 4debf41) Run command docker run gcr.io/k8s-staging-multitenancy/hnc-manager:v1.1.0 Command will run the container. Now create a kind cluster: kind create cluster Now try to run the container docker run gcr.io/k8s-staging-multitenancy/hnc-manager:v1.1.0 and there is an exec format error exec /manager: exec format error

After deleting the KIND cluster and restarting docker, the command docker run gcr.io/k8s-staging-multitenancy/hnc-manager:v1.1.0 can run again.

What you expected to happen:

Creating a KIND cluster does not introduce exec format errors for docker containers.

How to reproduce it (as minimally and precisely as possible):

docker run gcr.io/k8s-staging-multitenancy/hnc-manager:v1.1.0 kind create cluster docker run gcr.io/k8s-staging-multitenancy/hnc-manager:v1.1.0

Anything else we need to know?:

problem doesn't exist on kind 0.20.0

Environment:

Server: Containers: 71 Running: 1 Paused: 0 Stopped: 70 Images: 5 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: 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 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: seccomp Profile: unconfined cgroupns Kernel Version: 6.6.12-linuxkit Operating System: Docker Desktop OSType: linux Architecture: aarch64 CPUs: 12 Total Memory: 7.657GiB Name: docker-desktop ID: d90cceb7-44ff-4f92-a8e8-2494e0d2708b 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 Experimental: false Insecure Registries: hubproxy.docker.internal:5555 127.0.0.0/8 Live Restore Enabled: false

WARNING: daemon is not using the default seccomp profile```

BenTheElder commented 8 months ago

/triage duplicate binfmt_misc is the mechanism for multi-arch in docker, we have a fix coming in https://github.com/kubernetes-sigs/kind/issues/3510