Files
mutation/developer.Dockerfile
2023-12-03 23:01:00 +08:00

55 lines
2.3 KiB
Docker

FROM ubuntu:22.04
LABEL maintainer="lingyu zeng <pylyzeng@gmail.com>"
ENV TZ=Asia/Shanghai \
DEBIAN_FRONTEND=noninteractive \
PATH="/home/developer/bin:/home/developer/micromamba/bin:${PATH}" \
CONDA_PREFIX="/home/developer/micromamba/envs/pyrosetta"
# Configure timezone and install necessary packages
RUN <<EOT
#!/bin/bash
sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list;
sed -i 's/security.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list;
apt-get update;
ln -snf /usr/share/zoneinfo/\$TZ /etc/localtime; echo \$TZ > /etc/timezone;
apt-get install -y tzdata git zip curl wget bzip2 libgl1-mesa-glx g++ sudo software-properties-common build-essential;
adduser --disabled-password --gecos "" developer;
echo "developer:password" | chpasswd;
echo "developer ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/developer;
apt-get clean;
rm -rf /var/lib/apt/lists/*
EOT
# Switch to user developer
USER developer
# Set working directory
WORKDIR /home/developer
# Copy files
COPY --chown=developer .condarc mutation.py 4i24.pdb test.list _foldxLinux64.tar_.gz EvoEF2-master.zip install_scwrl4.0.2_64bit_2020_linux pyrosetta-2023.31+release.1799523-py311_0.tar.bz2 noarch/repodata.json .condarc /home/developer/
# Update and install necessary packages
RUN <<EOM
#!/bin/bash
unzip EvoEF2-master.zip;
chmod +x EvoEF2-master/build.sh;
cd EvoEF2-master;
./build.sh;
cd ..;
tar zxvf _foldxLinux64.tar_.gz;
chmod +x install_scwrl4.0.2_64bit_2020_linux;
echo -e "Y\nLicense Holder Name" | ./install_scwrl4.0.2_64bit_2020_linux ./;
wget -qO- https://micromamba.snakepit.net/api/micromamba/linux-64/latest | tar -xvj bin/micromamba;
./bin/micromamba shell init --shell bash --root-prefix=~/micromamba;
mkdir -p ~/noarch; mkdir ~/work; sudo chmod -R 777 ~/work;
mv repodata.json ~/noarch;
mv pyrosetta-2023.31+release.1799523-py311_0.tar.bz2 ~/noarch;
./bin/micromamba create -n pyrosetta -c conda-forge -c bioconda -c defaults python=3.11 click loguru biopython pymol-open-source pyrosetta-2023.31+release.1799523-py311_0.tar.bz2 -y;
rm -rf EvoEF2-master.zip install_scwrl4.0.2_64bit_2020_linux _foldxLinux64.tar_.gz ~/noarch
EOM
WORKDIR /home/developer/work
VOLUME ["/home/developer/work"]
ENTRYPOINT ["/home/developer/micromamba/envs/pyrosetta/bin/python", "/home/developer/mutation.py"]