49 lines
1.5 KiB
Docker
49 lines
1.5 KiB
Docker
FROM nvidia/cuda:12.2.0-runtime-ubuntu22.04
|
|
|
|
# Set non-interactive installation
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
# Install system dependencies
|
|
RUN apt-get update && apt-get install -y \
|
|
wget \
|
|
git \
|
|
python3 \
|
|
python3-pip \
|
|
build-essential \
|
|
curl \
|
|
python3-tk \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Set working directory
|
|
WORKDIR /opt/bioemu
|
|
|
|
# Install Python dependencies
|
|
RUN python3 -m pip install --upgrade pip
|
|
|
|
# Install BioEmu from PyPI
|
|
RUN pip install bioemu
|
|
|
|
# Install dependencies for free energy calculation
|
|
RUN pip install mdtraj scikit-learn pandas matplotlib seaborn
|
|
|
|
# Create directory for ColabFold and set environment variable
|
|
ENV COLABFOLD_DIR=/opt/colabfold
|
|
|
|
# Create cache directories with proper permissions
|
|
RUN mkdir -p ${COLABFOLD_DIR}/embeds_cache /tmp/colabfold_temp && \
|
|
chmod -R 777 ${COLABFOLD_DIR} /tmp/colabfold_temp
|
|
|
|
# Pre-setup ColabFold during build to avoid runtime issues
|
|
RUN wget "https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/5fc8775114b637b5672234179c50e694ab057db4/install_colabbatch_linux.sh" -O ${COLABFOLD_DIR}/install_colabbatch_linux.sh && \
|
|
chmod +x ${COLABFOLD_DIR}/install_colabbatch_linux.sh && \
|
|
bash ${COLABFOLD_DIR}/install_colabbatch_linux.sh
|
|
|
|
# Create directories for input/output with proper permissions
|
|
RUN mkdir -p /data /results && chmod -R 777 /data /results
|
|
|
|
RUN mkdir -p /opt/bioemu/scripts/
|
|
COPY calculate_gibbs.py /opt/bioemu/scripts/
|
|
RUN chmod +x /opt/bioemu/scripts/calculate_gibbs.py
|
|
|
|
CMD ["/bin/bash"]
|