This repository has been archived by the owner on Aug 1, 2024. It is now read-only.
Added a basic Dockerfile to improve dev experience #610
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I made a simple docker container (heavily influenced on the official Tensorflow docker container that I've used for other deep learning projects, and sharing some of the same features as the official pytorch and openfold containers. I did this mostly because I didn't want to change the version of CUDA and other packages installed on my linux box, and figured this would enable some nice portability for users who I'd imagine are often running ESM in a Docker-based HPC environment like Kubernetes or AWS Batch.
In particular, this container
Build steps
docker build -f Dockerfile -t esm .
Running the container
docker run -it --rm --runtime=nvidia --gpus all esm conda activate esmfold # Whatever else you want to do!
I'd be happy to follow up with a
docker-compose.yml
file to further simplify build/usage, and to add some CI/CD automation to add container builds to Github Actions, if of interest. Figured I'd check with the maintainers first to see if this was of interest before continuing though.