Closed dmarteau closed 2 years ago
Maybe this is related to the following change (From https://docs.docker.com/engine/release-notes/#201013):
@dmarteau, thanks for filing this up and for the docker pointer. Looks like we'll need to look into this right away. Will get back to you asap.
As suggested by @dmarteau, the problem is a side effect of this recent docker change.
These changes allow ping (ICMP) traffic to be sourced within regular unprivileged containers, but this is only possible when containers are running in userns-mode=host
(i.e. no dedicated user-namespaces). This is enforced by having Docker verifying that userns-remap
feature is not enabled -- see that they only write into ping_group_range
if userns-remap
is turned off. This approach works fine when docker operates with the oci-runc, but it breaks when dealing with Sysbox (where user-namespaces are always utilized/enforced).
Luckily we had indirectly addressed this issue as part of the buildkit-support feature (already merged), so a fix for this one will come in our next official release (v0.5.0) which is expected within the next couple of days.
These changes allow ping (ICMP) traffic to be sourced within regular unprivileged containers, but this is only possible when containers are running in
userns-mode=host
(i.e. no dedicated user-namespaces). To do so, Docker first checks ifuserns-remap
feature is enabled and only if that's the case then it write intoping_group_range
sysctl. This approach works fine when docker operates with the oci-runc, but it breaks when dealing with Sysbox (where user-namespaces are always utilized/enforced).
@rodnymolina it means the issue happen for userns-remap
enabled docker daemon and has no impact without it. Right?
@fhaefemeier, no, this issue will happen whenever you launch a sysbox container while having the very latest Docker version installed (i.e., 20.10.13). I re-adjusted my previous comment above to make it clearer.
Btw, Sysbox v0.5.0 release was deferred a few extra days due to a last-minute issue which ended up being a false alarm. The new ETA is 03/21.
Fix went into Sysbox v0.5.0 release. Please re-open if you have any issues.
I have a docker-compose with network defined:
services are configured like
With docker 20.10.12 all was working perfectly, I just upgraded the docker-ce/docker-ce-cli/containerd to
And now starting the containers fail with the following errors:
Note that there is no problem with the docker default runtime: container starts as expected with same custom network config.
I confirm that rolling back to docker-ce 20.10.12 then all work perfectly.