NVIDIA / enroot

A simple yet powerful tool to turn traditional container/OS images into unprivileged sandboxes.
Apache License 2.0
649 stars 94 forks source link

enroot jail runs perfect first time, but fails the second #212

Open icsy7867 opened 1 month ago

icsy7867 commented 1 month ago

I am really not sure where to start with this issue. I am hoping someone smarter than I might have some magic insight...

Basically, I have an enroot jail, which I imported and created from a docker container. Everything runs 100% fine the first run through.

However, if I kill the enroot jail, and restart it in exactly the same way I get this error:

nvidia-container-cli: initialization error: load library failed: /home/username/.local/share/enroot/enroot_name/usr/bin/../lib64/libnvidia-ml.so.1: file too short
[ERROR] /etc/enroot/hooks.d/98-nvidia.sh exited with return code 1

now if I do an enroot remove enroot_name and I recreate and restart it, it works fine again. Any guidance would be amazing! Thank you!

3XX0 commented 1 month ago

Hard to say without more context but my guess is you have libnvidia-container installed in your image with some environment variables that would make it try to load driver libraries that are not yet mounted in the container.

See https://github.com/NVIDIA/libnvidia-container/issues/224