-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Assess the viability of adopting Docker Containers vs Conda as the standard execution environment for the package #534
Comments
Another downside is that Docker containers aren't composable, i.e. if you want to use program A together with program B and they're both distributed as Docker images, then it's going to be tricky to make it work. At best you could mount a folder in both and exchange data between them, but a single Python script that calls functions from both won't work. I think a better solution here is to create packages on conda-forge for deeprank2 and, if necessary, its dependencies. It seems that DSSP is the main dependency not available as a Conda package. Possibly the authors could be persuaded to provide one, or maybe we could set it up and they could maintain it, or we could do it all ourselves, in descending order of preference. |
I opened an issue in the DSSP repo requesting Conda package support for DSSP. We'll wait for the maintainers to check it out before figuring out what to do next. |
The authors of DSSP are not willing to release it on Conda, but they're fine with us doing that. Do you think it is feasible in a short time even if we're not the authors of the package? @LourensVeen If not, we will evaluate whether to entirely remove the dependency on DSSP. It is used to generate one relatively minor feature and is not fundamental to our pipeline. If instead is doable, then we can have a brief chat for tips (I've never released anything on conda) and then I'll start the procedure myself. |
Okay, I've got Conda swapped out a bit at the moment, but I'm back at work next week and I'll get back on it, so we should be able to set something up then. |
I installed this conda version of dssp on MacOS with M1 chip in a new environment and the tests passed. They also pass by setting up the env on Snellius, being careful about providing |
In the course of PR #528, we recognized the benefits of constructing an environment within a Docker container, which eliminates the need for users to manually handle the installation of various dependencies required by deeprank2. Thus, there is the possibility to make Docker containers the default execution environment for the package. However, there are some concerns about this direction.
PROs
CONs:
In my opinion, for our community use cases, Docker is not the best choice, especially for the latter couple of cons listed above. But please let me know your thoughts :) and also if you know about alternatives that overcome Docker's limitations.
The text was updated successfully, but these errors were encountered: