software-layer
software-layer copied to clipboard
Supporting containers in EESSI
Compute Canada support containers for some applications and it may be strategic for us to do (a limited amount of) the same. There are a few elements to this:
- An apptainer easyblock in EasyBuild
- This would require folding in some aspects of the script Compute Canada use to actually build the container image
I realise there are easy arguments against this: performance, licensing and architecture support among them. Nevertheless, if we have complex applications that may take a significant amount of time to integrate properly, this could provide a quick and dirty interim solution.
Along the same lines, do we want to consider installing stuff using conda in EESSI?
Recent example is FSL, where you can't build recent versions from source anymore, they basically only support installation via conda as far as I could tell...
So the motivation for this from me is this Qiime2 PR, we can't really control Conda installs, but if a container exists, at least we have something that is reproducible. For Qiime2 a container release option exists. At the very least, using a container means you can't contaminate other applications, which you could do with a Conda easyblock (via LIBRARY_PATH)
I admit it's a significant effort, but we do have a proper from source installation of QIIME2 too though, see https://github.com/easybuilders/easybuild-easyconfigs/pull/18407