What is the problem you're trying to solve
As Docker gradually moves to paid subscription, I'd like to use continaerd & nerdctl instead. However, nerdctl need to be run as root or require containerd run in rootless mode.
It would be nice if have a way to nerdctl access system containerd (from non-root user) and provide same experiment as docker does.
Describe the solution you'd like
Any non-root users can interact with docker as long as they are in docker group. It's because /var/run/docker.sock which controlled by docker.socket run as mod 0660 and group docker:

And then in docker.service, it use socket pre-created from systemd (-H fd://) instead of create its own (Moby code)

In containerd side, when I run /usr/bin/containerd -a fd://, I got the following error:

I look like ttrpc socket issue.
Additional context
> containerd --version
containerd containerd.io 1.4.11 5b46e404f6b9f661a205e28d59c982d3634148f8
> docker version
Client: Docker Engine - Community
Version: 20.10.9
API version: 1.41
Go version: go1.16.8
Git commit: c2ea9bc
Built: Mon Oct 4 16:08:29 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.9
API version: 1.41 (minimum version 1.12)
Go version: go1.16.8
Git commit: 79ea9d3
Built: Mon Oct 4 16:06:37 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.11
GitCommit: 5b46e404f6b9f661a205e28d59c982d3634148f8
runc:
Version: 1.0.2
GitCommit: v1.0.2-0-g52b36a2
docker-init:
Version: 0.19.0
GitCommit: de40ad0
What is the problem you're trying to solve
As Docker gradually moves to paid subscription, I'd like to use
continaerd&nerdctlinstead. However,nerdctlneed to be run as root or requirecontainerdrun inrootless mode.It would be nice if have a way to
nerdctlaccess system containerd (from non-root user) and provide same experiment as docker does.Describe the solution you'd like
Any non-root users can interact with docker as long as they are in


dockergroup. It's because/var/run/docker.sockwhich controlled bydocker.socketrun as mod0660and groupdocker:And then in
docker.service, it use socket pre-created from systemd (-H fd://) instead of create its own (Moby code)In

containerdside, when I run/usr/bin/containerd -a fd://, I got the following error:I look like
ttrpcsocket issue.Additional context