nerdctl icon indicating copy to clipboard operation
nerdctl copied to clipboard

nerdctl build failed to build image and showing nothing output

Open zzsoszz opened this issue 1 year ago • 4 comments

Description

nerdctl build failed image and showing nothing output, how to troubleshoot in this senario?

Steps to reproduce the issue

$ containerd-rootless-setuptool.sh install

$ containerd-rootless-setuptool.sh install-buildkit

$ cat Dockerfile

FROM nginx
RUN echo 'Hello Nerdctl From Containerd' > /usr/share/nginx/html/index.html

$ nerdctl build --no-cache -t test . (not working)

$ nerdctl images

REPOSITORY    TAG       IMAGE ID        CREATED           PLATFORM       SIZE        BLOB SIZE

$ docker build --no-cache -t test . (working)

Sending build context to Docker daemon  14.34kB
Step 1/2 : FROM nginx

latest: Pulling from library/nginx
a2abf6c4d29d: Pull complete 
a9edb18cadd1: Pull complete 
589b7251471a: Pull complete 
186b1aaa4aa6: Pull complete 
b4df32aa5a72: Pull complete 
a0bcbecc962e: Pull complete 
Digest: sha256:0d17b565c37bcbd895e9d92315a05c1c3c9a29f762b011a10c54a66cd53c9b31
Status: Downloaded newer image for nginx:latest
 ---> 605c77e624dd
Step 2/2 : RUN echo 'Hello Nerdctl From Containerd' > /usr/share/nginx/html/index.html
 ---> Running in 5dbdc1109458
Removing intermediate container 5dbdc1109458
 ---> 941322e50337
Successfully built 941322e50337
Successfully tagged test:latest
ubuntu@VM-0-8-ubuntu:~/projects/containerd_learning Mon Oct 03 09:32:20

$ systemctl --user status buildkit.service

● buildkit.service - BuildKit (Rootless)
   Loaded: loaded (/home/ubuntu/.config/systemd/user/buildkit.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2022-10-03 09:30:05 CST; 3min 0s ago
 Main PID: 9885 (buildkitd)
   CGroup: /user.slice/user-500.slice/[email protected]/buildkit.service
           └─9885 buildkitd

Oct 03 09:30:05 VM-0-8-ubuntu systemd[13050]: Started BuildKit (Rootless).
Oct 03 09:30:05 VM-0-8-ubuntu containerd-rootless-setuptool.sh[9885]: time="2022-10-03T09:30:05+08:00" level=info ms
Oct 03 09:30:05 VM-0-8-ubuntu containerd-rootless-setuptool.sh[9885]: time="2022-10-03T09:30:05+08:00" level=info ms
Oct 03 09:30:05 VM-0-8-ubuntu containerd-rootless-setuptool.sh[9885]: time="2022-10-03T09:30:05+08:00" level=warning
Oct 03 09:30:05 VM-0-8-ubuntu containerd-rootless-setuptool.sh[9885]: time="2022-10-03T09:30:05+08:00" level=info ms
Oct 03 09:30:05 VM-0-8-ubuntu containerd-rootless-setuptool.sh[9885]: time="2022-10-03T09:30:05+08:00" level=warning
Oct 03 09:30:05 VM-0-8-ubuntu containerd-rootless-setuptool.sh[9885]: time="2022-10-03T09:30:05+08:00" level=info ms

$ systemctl --user status containerd.service

● containerd.service - containerd (Rootless)
   Loaded: loaded (/home/ubuntu/.config/systemd/user/containerd.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2022-10-03 08:50:25 CST; 43min ago
 Main PID: 9722 (rootlesskit)
   CGroup: /user.slice/user-500.slice/[email protected]/containerd.service
           ├─ 9722 rootlesskit --state-dir=/run/user/500/containerd-rootless --net=slirp4netns --mtu=65520 --slirp4n
           ├─ 9733 /proc/self/exe --state-dir=/run/user/500/containerd-rootless --net=slirp4netns --mtu=65520 --slir
           ├─ 9744 slirp4netns --mtu 65520 -r 3 --disable-host-loopback --enable-sandbox --enable-seccomp 9733 tap0
           ├─ 9755 containerd
           └─12528 /usr/bin/containerd-shim-runc-v2 -namespace default -id 10ab2ef84fb3e112710460cc075a708c25ed9f291

Oct 03 08:50:26 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T08:50:26.745058632+08:00" level=info ms
Oct 03 08:50:26 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T08:50:26.745138325+08:00" level=info ms
Oct 03 08:50:26 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T08:50:26.745232015+08:00" level=info ms
Oct 03 08:50:26 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T08:50:26.761147182+08:00" level=info ms
Oct 03 08:50:26 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T08:50:26.761204498+08:00" level=info ms
Oct 03 08:50:26 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T08:50:26.761261666+08:00" level=info ms
Oct 03 09:10:59 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T09:10:59.585340399+08:00" level=info ms
Oct 03 09:10:59 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T09:10:59.585461259+08:00" level=info ms
Oct 03 09:10:59 VM-0-8-ubuntu containerd-rootless.sh[9722]: time="2022-10-03T09:10:59.585492418+08:00" level=info ms

Describe the results you received and expected

show output when nerdctl build.

What version of nerdctl are you using?

$ nerdctl version

Client:
 Version:       v0.23.0
 OS/Arch:       linux/amd64
 Git commit:    660680b7ddfde1d38a66ec1c7f08f8d89ab92c68
 buildctl:
  Version:      v0.9.0
  GitCommit:    c8bb937807d405d92be91f06ce2629e6202ac7a9

Server:
 containerd:
  Version:      1.6.6
  GitCommit:    10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:      1.1.2
  GitCommit:    v1.1.2-0-ga916309

Are you using a variant of nerdctl?

None

Host information

$ uname -a

Linux VM-0-8-ubuntu 4.15.0-142-generic #146-Ubuntu SMP Tue Apr 13 01:11:19 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
ubuntu@VM-0-8-ubuntu:~/projects/containerd_learning Mon Oct 03 09:32:48

zzsoszz avatar Oct 03 '22 01:10 zzsoszz

Please try nerdctl --debug build.

Also please try sudo

AkihiroSuda avatar Oct 03 '22 05:10 AkihiroSuda

Does nerdctl run hello-world work?

AkihiroSuda avatar Oct 03 '22 05:10 AkihiroSuda

nerdctl --debug build

$ nerdctl --debug build -t demo . DEBU[0000] stateDir: /run/user/500/containerd-rootless
DEBU[0000] rootless parent main: executing "/usr/bin/nsenter" with [-r/ -w/home/ubuntu/projects/containerd_learning --preserve-credentials -m -n -U -t 9733 -F nerdctl --debug build -t demo .] DEBU[0000] Choosing the buildkit host "buildkit-default/buildkitd.sock", candidates=[buildkit-default/buildkitd.sock buildkit/buildkitd.sock] (in "/run/user/500") DEBU[0000] Choosing the buildkit host "buildkit/buildkitd.sock", candidates=[buildkit-default/buildkitd.sock buildkit/buildkitd.sock] (in "/run/user/500") DEBU[0000] Chosen buildkit host "unix:///run/user/500/buildkit/buildkitd.sock"

zzsoszz avatar Oct 04 '22 11:10 zzsoszz

@AkihiroSuda $ buildctl build --frontend=dockerfile.v0 --local context=. --local dockerfile=.

[+] Building 1.0s (5/5) FINISHED                                                                                    
 => [internal] load build definition from Dockerfile                                                           0.0s
 => => transferring dockerfile: 124B                                                                           0.0s
 => [internal] load .dockerignore                                                                              0.0s
 => => transferring context: 2B                                                                                0.0s
 => [internal] load metadata for docker.io/library/nginx:latest                                                0.9s
 => [1/2] FROM docker.io/library/nginx@sha256:0b970013351304af46f322da1263516b188318682b2ab1091862497591189ff  0.0s
 => => resolve docker.io/library/nginx@sha256:0b970013351304af46f322da1263516b188318682b2ab1091862497591189ff  0.0s
 => CACHED [2/2] RUN echo 'Hello Nerdctl From Containerd' > /usr/share/nginx/html/index.html                   0.0s
ubuntu@VM-0-8-ubuntu:~/projects/containerd_learning Tue Oct 04 20:54:59

$ nerdctl build -t demo . --debug

DEBU[0000] stateDir: /run/user/500/containerd-rootless  
DEBU[0000] rootless parent main: executing "/usr/bin/nsenter" with [-r/ -w/home/ubuntu/projects/containerd_learning --preserve-credentials -m -n -U -t 10871 -F nerdctl build -t demo . --debug] 

zzsoszz avatar Oct 04 '22 12:10 zzsoszz

I cann't reproduce this issue. In the debug log; can you give me your buildctl (the last line displayed below) command.

➜  tmp git:(build) ✗  nerdctl --debug build --no-cache -t test . 
DEBU[0000] stateDir: /run/user/1000/containerd-rootless 
DEBU[0000] rootless parent main: executing "/usr/bin/nsenter" with [-r/ -w/home/manu/go/src/github.com/containerd/nerdctl/tmp --preserve-credentials -m -n -U -t 3033 -F nerdctl --debug build --no-cache -t test .] 
DEBU[0000] Choosing the buildkit host "buildkit-default/buildkitd.sock", candidates=[buildkit-default/buildkitd.sock buildkit/buildkitd.sock] (in "/run/user/1000") 
DEBU[0000] Chosen buildkit host "unix:///run/user/1000/buildkit-default/buildkitd.sock" 
DEBU[0000] worker labels: map[org.mobyproject.buildkit.worker.containerd.namespace:default org.mobyproject.buildkit.worker.containerd.uuid:3e889e45-10f7-42a9-a18a-a2d2d4609a64 org.mobyproject.buildkit.worker.executor:containerd org.mobyproject.buildkit.worker.hostname:fedora org.mobyproject.buildkit.worker.network:host org.mobyproject.buildkit.worker.snapshotter:overlayfs] 
DEBU[0000] running /usr/local/bin/buildctl [--addr=unix:///run/user/1000/buildkit-default/buildkitd.sock build --progress=auto --frontend=dockerfile.v0 --local=context=. --output=type=image,unpack=true,name=docker.io/library/test:latest --local=dockerfile=/home/manu/go/src/github.com/containerd/nerdctl/tmp --opt=filename=Dockerfile --no-cache] 
[+] Building 7.6s (7/7) FINISHED   

I have containerd worker setup. Do you have any other workers setup?

manugupt1 avatar Nov 07 '22 02:11 manugupt1