Protein 3D prediction based only on amino acid sequence.
2.5K
Original Github repository: https://github.com/HeliXonProtein/OmegaFold
I leave all the info below. On an HTCondor Linux cluster the solution was to add export TORCH_HOME=${PWD} in the submitted script.
Additionally these additional environment variable are either necessary or useful.
export HOME=${PWD}
export TORCH_HOME=${PWD}
export DEFAULT_CACHE_DIR=${PWD}
Additionally, for the evodiff containers, this cache is necessary for Matplotlib, but not needed for these omegafold containers.
export MPLCONFIGDIR=./local_cache
May 19, 2026: update to a newer container image with a newer CUDA. Omegafold requires python 3.10 (3.11 and 3.12 fail and are not compatible) hence this cannot be the most recent.
Docker file for version2.2.0-cuda12.1-cudnn8:
FROM pytorch/pytorch:2.2.0-cuda12.1-cudnn8-runtime
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y git \
&& rm -rf /var/lib/apt/lists/*
RUN pip install --no-cache-dir \
git+https://github.com/HeliXonProtein/OmegaFold.git --no-deps
RUN pip install --no-cache-dir numpy scipy biopython
WORKDIR /workspace
###################################
# ARG USERNAME=user-name-goes-here
ARG USERNAME=omegauser
ARG USER_UID=1000
ARG USER_GID=$USER_UID
# Create the user
RUN groupadd --gid $USER_GID $USERNAME \
&& useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \
#
# [Optional] Add sudo support. Omit if you don't need to install software after connecting.
&& apt-get update \
&& apt-get install -y sudo \
&& echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
&& chmod 0440 /etc/sudoers.d/$USERNAME
# ********************************************************
# * Anything else you want to do like clean up goes here *
# ********************************************************
# [Optional] Set the default user. Omit if you want to keep the default as root.
USER $USERNAME
RUN chmod a+w /home/$USERNAME
CMD ["bash"]
version 1.0.0 is derived from anabuurs/omegafold:v1.0.0 with just one added directory created: /home/root in hope to circumvet /.cache error when running under HTCondor schduler (See Dockerfile.)
Docker file
FROM anabuurs/omegafold:v1.0.0
RUN mkdir /home/root
# To answer /.cache issue when running on HTCondor.
# INFO:
#https://stackoverflow.com/questions/63526148/permissionerror-errno-13-permission-denied-cache-error-occurred-while
# When you ssh to docker container, if there is no /home/username directory,
# pytorch gives /.cache directory by defaultRUN mkdir /home/root
# See here: https://github.com/pytorch/pytorch/blob/main/torch/hub.py#L99
Running the container on a HTCondor Linux cluster does not provide root access, and the above hack did not work. Hence a Non Root Docker image was created with this:
Dockerfile
FROM anabuurs/omegafold:v1.0.0
RUN mkdir /home/root
# To answer /.cache issue when running on HTCondor.
# INFO:
#https://stackoverflow.com/questions/63526148/permissionerror-errno-13-permission-denied-cache-error-occurred-while
# When you ssh to docker container, if there is no /home/username directory,
# pytorch gives /.cache directory by defaultRUN mkdir /home/root
# See here: https://github.com/pytorch/pytorch/blob/main/torch/hub.py#L99
#####################
# For security, add non-root user rather than give all permissions to write in /.cache
# FROM: https://code.visualstudio.com/remote/advancedcontainers/add-nonroot-user
# ARG USERNAME=user-name-goes-here
ARG USERNAME=omegauser
ARG USER_UID=1000
ARG USER_GID=$USER_UID
# Create the user
RUN groupadd --gid $USER_GID $USERNAME \
&& useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \
#
# [Optional] Add sudo support. Omit if you don't need to install software after connecting.
&& apt-get update \
&& apt-get install -y sudo \
&& echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
&& chmod 0440 /etc/sudoers.d/$USERNAME
# ********************************************************
# * Anything else you want to do like clean up goes here *
# ********************************************************
# [Optional] Set the default user. Omit if you want to keep the default as root.
USER $USERNAME
RUN chmod a+w /home/$USERNAME
WORKDIR /home/$USERNAME
Content type
Image
Digest
sha256:ac44dd494…
Size
2.4 GB
Last updated
almost 3 years ago
docker pull jysgro/omegafold