-
Notifications
You must be signed in to change notification settings - Fork 600
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
Add dind-rootless #165
Add dind-rootless #165
Conversation
d71b5c3
to
a4ed75c
Compare
a quick test.
|
What's your host kernel? |
|
You are right! 👍 It can solve this error. I have another error
|
systemd cgls info
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In short, I think there is a problem with my environment, I will continue to debug and solve it.
For this change, LGTM
Thanks 👍
cgroup error is weird. does |
Usage: $ docker build -t dind-rootless . $ docker run -d --name dind-rootless --privileged dind-rootless $ docker exec dind-rootless docker info * The daemon runs in an unprivileged user with ID 1000 * `--privileged` is still required due to seccomp, apparmor, procfs, and sysfs stuff * `-H tcp://....` will be supported soon: moby/moby#39493 Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
updated pr to add entrypoint script for automatically fallback to vfs storage driver |
Yes, the full outputs here.
|
I will give it a try ASAP. (on holiday. |
Using latest update to build image and run it. I get the same error. Here is the container's log.
|
Is the failure specific to dind? |
It specific to dind-rootless. docker:dind works fine. |
Does non-dind rootless work? |
Yes. It works well. Its
|
I confirmed that the issue can be avoided by applying the following patch to containerd daemon, but not sure why it is specific to Fedora. Couldn't reproduce on Ubuntu. diff --git a/runtime/v1/linux/task.go b/runtime/v1/linux/task.go
index e13255e9..80eb0d64 100644
--- a/runtime/v1/linux/task.go
+++ b/runtime/v1/linux/task.go
@@ -124,7 +124,7 @@ func (t *Task) Start(ctx context.Context) error {
t.pid = int(r.Pid)
if !hasCgroup {
cg, err := cgroups.Load(cgroups.V1, cgroups.PidPath(t.pid))
- if err != nil {
+ if err != nil && err != cgroups.ErrCgroupDeleted {
return err
}
t.mu.Lock( EDIT: On Ubuntu, as EDIT: PR containerd/containerd#3419 |
Thanks. Let me have a try. |
Fix a Rootless Docker-in-Docker issue on Fedora 30: docker-library/docker#165 (comment) Related: containerd#1598 Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
Fix a Rootless Docker-in-Docker issue on Fedora 30: docker-library/docker#165 (comment) Related: containerd#1598 Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp> (cherry picked from commit fab016c) Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
closing in favor of #174 |
Fix a Rootless Docker-in-Docker issue on Fedora 30: docker-library/docker#165 (comment) Related: containerd#1598 Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
Usage:
--privileged
is still required due to seccomp, apparmor, procfs, and sysfs stuff-H tcp://....
will be supported soon: rootless: allow exposing dockerd TCP socket easily moby/moby#39493Signed-off-by: Akihiro Suda akihiro.suda.cz@hco.ntt.co.jp