brainlife / ezbids

A web service for semi-automated conversion of raw imaging data to BIDS
https://brainlife.io/ezbids
MIT License
26 stars 13 forks source link

[ENH] Add Singularity installation option #109

Closed dlevitas closed 4 months ago

dlevitas commented 8 months ago

This PR will [hopefully] address #100.

This is still a WIP, as the singularity containers are currently not orchestrated properly. Currently trying multiple singularity contains separately, but might switch to a singularity-compose approach.

dlevitas commented 6 months ago

Closing this for now, as it's become more work than it's worth, and because we already have a Docker & Docker-Compose equivalent.

dlevitas commented 5 months ago

Resurrecting this PR for discussion with @julia-pfarr, @surchs, and @bcmcpher (thanks Julia for coordinating).

To briefly summarize, ezBIDS is a web-based BIDS conversion tool that currently requires both Docker and Docker Compose for setup. In particular, we use Docker Compose since ezBIDS is a collection of 4 separate Docker containers (see docker-compose.yml file for reference).

This setup works well, but recently several research groups have reached out to inquire whether we can provide a Singularity installable, as most institution HPCs won't support Docker. When I began this PR with boundless enthusiasm I thought I could simply use Singularity and [Singularity Compose](https://singularityhub.github.io/singularity-compose/#/) to create an ezBIDS installable for HPC environments.

Thus far however I haven't had success creating a successful ezBIDS instance with Singularity. There are several issues; mainly, I can't create a proper mongodb connection, Singularity Compose doesn't appear to be under active development, and I keep encountering root access issues that I assumed Singularity would circumvent.

Given my (and the team's) lack of expertise with Singularity, I wanted to reach out to @surchs, and @bcmcpher to see if either of you might have any insights. I am not fully convinced that a Singularity ezBIDS installable is feasible absent a major refactoring, but I wanted to get your opinions before making any conclusions.