singularity
singularity copied to clipboard
plugin/example: --bindlibs flag to automatically mount named libraries from host
It would be nice to have an option similar to --nv where the user can specify a library and singularity finds that library and binds it internally. Example:
singularity shell --bindlibs libcudnn.so:libmlx5-rdmav2.so cuda.img
This is more for convenience but it can simplify things a lot, especially on a cluster where libraries could be installed in various different places.
Hi! I really like this idea, however I'm not sure the best way that we can make it work. Unfortunately, we can't allow users to bind arbitrary single files (as opposed to arbitrary directories) into the container, as it appears that the kernel doesn't respect the MS_NOSUID mount flag when bind mounting a single file. @gmkurtzer was there ever any resolution to why that was happening?
Nope, I never got a definitive word back from a kernel developer on this, but the PR_SET_NO_NEW_PRIVS was always our fallback on this (and one of the reasons why user bind mounts are prohibited if that option is not available).
We could however handle this in the same way as we are doing the nvidia libraries, but I am concerned about the portability implications of binding libraries that are built for a specific distribution into a container.
Hello,
This is a templated response that is being sent out to all open issues. We are working hard on 'rebuilding' the Singularity community, and a major task on the agenda is finding out what issues are still outstanding.
Please consider the following:
- Is this issue a duplicate, or has it been fixed/implemented since being added?
- Is the issue still relevant to the current state of Singularity's functionality?
- Would you like to continue discussing this issue or feature request?
Thanks, Carter
This issue has been automatically marked as stale because it has not had activity in over 60 days. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.
What about a local temporary volume can be set, and then a remote one, in the .def
file, be defined. This could help to fetch libraries across a cluster or over the public internet. This helps too in a way for old libraries being discontinued or out of support, any local copy can be obtained across all applications, without any tweaks.
@ch741 We're looking into the issue carefully, soon will bring to community and discuss ways to better solve as well address this. Thankyou for keeping the interest in the subject.
We are cleaning up old issues in the old Singularity repo. This sounds like nice to have feature than a critical issue so we are closing it. If the author still needs it please reopen a new issue under the new Apptainer repo. Thanks.