nerdctl with nydus, issues but not sure in which part of the stack #4495
Replies: 2 comments 1 reply
-
According to a response to my question in the nydus slack: nerdctl does not support pushing nydus converted images? So instead I utilized nydusify to pull the "normal" image, convert and push the converted with a different tag (:nydus) blob sha256:8bfcb80d0ad27f84d1a7c6afc46ebf19e28f25ec47db8c01a0ae2c4651ed2b07 is not found last part of nydusify command output:
|
Beta Was this translation helpful? Give feedback.
-
Tried a lot, switched registry:v2 to zot, switched nerdctl to ctr for the pull part but same issue
Removed the /var/lib/containerd/metadata.db and that finally helped.
Will return to evaluating the chunk based deduplication as the next step |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Issue
I'm running into an issue with trying out nerdctl with nydus but as mentioned in the header, not sure where in the stack the error lies
locally built image, then converted and finally pushed to locally hosted registry, cleaning up cache, then finally, when pulling from registry, manifest seems missing and/or nerdctl looks for i locally?
Asked a question in cncf slack # nerdctl but realized it was was very inactive
Environment
My evaluation environment is W11 with WSL2, Ubuntu 24.04 distro with 6.6.36.6-microsoft-standard-WSL2 kernel, built EROFS kernel module and loaded.
nerdctl version 2.1.3
nydus-snapshotter. Version: v0.15.2,
containerd github.com/containerd/containerd/v2 v2.1.4 75cb2b7193e4e490e9fbdc236c0e811ccaba3376
First attempt with a stock nydusd-config.fusedev.json worked but did not show any deduplication support in storage what so ever, thinking I might need to modify the config to get the chunk based support enabled
Details
After reconfiguring to get chunk support enabled:
I rebuild the images(5 images in total, base image shared, a static file shared, a unique file per image based on static shared file + a few unique bytes appended) locally from "dockerfiles",
convert the images via:
./nerdctl image convert --nydus --oci localhost:5000/testimg$i:raw localhost:5000/testimg$i:nydus
push to the registry:
./nerdctl push localhost:5000/testimg$i:nydus
clean up local storage in order to make sure i have no local artifacts affecting what get's pulled the first time,
pull from registry:
Detailed output from nerdctl push, related to the manifest(digest="sha256:419d9156f77c2e44482040cfa21ac2d6a2ca2f92dc7fc818149be06a07aefa42") that is later failing to be found during the pull
Detailed output from nerdctl when pulling, the missing blob(digest="sha256:419d9156f77c2e44482040cfa21ac2d6a2ca2f92dc7fc818149be06a07aefa42")
Additional tests
I will test utilizing nydusify to convert the image and see if that makes any difference,
Beta Was this translation helpful? Give feedback.
All reactions