-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fails to create envoy
container with nerdctl <- docker
symlink
#132
Comments
envoy
container with nerdctl -> docker
symlinkenvoy
container with nerdctl <- docker
symlink
is nerdctl not fully compatible? I'm not very familiar with this alternative |
I'd assume it should be at least so far as command/API arguments as containerd/nerdctl claims to be:
I don't know enough regarding implementing a load balancer controller in Kubernetes if it would require anything Docker-proprietary networking-wise. I'd assume not. |
my statement may be misleading, nerdctl, podman or docker does not need to implement any loadbalancer capabilit, they just run containers ... the commands and the reports of those commands are the things that need to be compatible, as you see in other issue you have reported the problem is that some containers return more than two ips ... we can fix that here, but until now docker and podman always reported one IP per IP family per container |
While nerdctl has shown willingness to consider differences a bug, they still have to release a fix for them if/when it happens. In my experience, docker's behavior is complex and "drop in replacements" quickly stop being drop-in compatible when you're doing tricky, barely supported things like kubernetes-in-a-container. We maintain specific interface implementations in kind for nerdctl, podman, and docker because of those small differences. We should detect if it's actually docker or not, kind does this for podman/docker already with symlinks. We sniff the output of |
We should detect "this is actually nerdctl" and use the nerdctl specific paths. nerdctl is really close to compatible but not 100% compatible, and we'll want to be able to mitigate anything that turns up (plus it's not that bad to maintain two copies of the bits that talk to docker or nerdctl respectively, we do this in kubernetes-sigs/kind as well). |
Detecting of nerdctl will be added in #175 but I still can't see why it fails to create the container in the logs |
Due to #130 I just symlinked the binary to see if it work, but container creation fails.
Logs:
Environment:
$ uname -a Linux REDACTED 6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) x86_64 GNU/Linux $ kind --version kind version 0.24.0 $ nerdctl version Client: Version: v1.7.7 OS/Arch: linux/amd64 Git commit: 5882c720f4e7f358fb26b759e514b3ae9dd8ea83 buildctl: Version: v0.15.2 GitCommit: 9e14164a1099d3e41b58fc879cbdd6f2b2edb04e Server: containerd: Version: v1.7.22 GitCommit: 7f7fdf5fed64eb6a7caf99b3e12efcf9d60e311c runc: Version: 1.1.14 GitCommit: v1.1.14-0-g2c9f5602
nerdctl
events:The text was updated successfully, but these errors were encountered: