|
|
FROM python:3.9-slim |
|
|
|
|
|
|
|
|
RUN apt-get update && apt-get install -y \ |
|
|
wget \ |
|
|
curl \ |
|
|
build-essential \ |
|
|
gcc \ |
|
|
g++ \ |
|
|
make \ |
|
|
libffi-dev \ |
|
|
libssl-dev \ |
|
|
libglib2.0-0 \ |
|
|
libxext6 \ |
|
|
libsm6 \ |
|
|
libxrender1 \ |
|
|
libgomp1 \ |
|
|
&& rm -rf /var/lib/apt/lists/* |
|
|
|
|
|
|
|
|
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && \ |
|
|
bash Miniconda3-latest-Linux-x86_64.sh -b -p /opt/conda && \ |
|
|
rm Miniconda3-latest-Linux-x86_64.sh |
|
|
|
|
|
ENV PATH="/opt/conda/bin:${PATH}" |
|
|
|
|
|
|
|
|
RUN conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main && \ |
|
|
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/r && \ |
|
|
conda config --add channels conda-forge && \ |
|
|
conda config --add channels bioconda && \ |
|
|
conda config --set channel_priority flexible |
|
|
|
|
|
|
|
|
RUN conda install -n base -c conda-forge mamba -y |
|
|
|
|
|
|
|
|
RUN mamba install -y python=3.11 conda-forge::ambertools conda-forge::pymol-open-source |
|
|
|
|
|
|
|
|
RUN conda clean -afy |
|
|
|
|
|
|
|
|
RUN pip install --no-cache-dir \ |
|
|
flask==2.3.3 \ |
|
|
flask-cors==4.0.0 \ |
|
|
biopython==1.81 \ |
|
|
numpy==1.24.3 \ |
|
|
pandas==2.0.3 \ |
|
|
matplotlib==3.7.2 \ |
|
|
seaborn==0.12.2 \ |
|
|
mdanalysis==2.5.0 \ |
|
|
gunicorn==21.2.0 \ |
|
|
requests==2.31.0 \ |
|
|
rdkit==2023.3.1 \ |
|
|
scipy==1.11.1 |
|
|
|
|
|
|
|
|
WORKDIR /AmberFlow |
|
|
|
|
|
|
|
|
COPY . . |
|
|
|
|
|
|
|
|
RUN mkdir -p /AmberFlow/obsolete /AmberFlow/pdb /AmberFlow/temp /AmberFlow/output && \ |
|
|
chmod -R 777 /AmberFlow |
|
|
|
|
|
|
|
|
ENV PYTHONPATH="${PYTHONPATH}:/AmberFlow/python" |
|
|
|
|
|
|
|
|
EXPOSE 7860 |
|
|
|
|
|
|
|
|
CMD ["python", "start_web_server.py"] |
|
|
|
|
|
|