EukPhylo/PTL1/Dockerfile.txt
2025-03-18 18:29:58 -04:00

54 lines
1.7 KiB
Plaintext

# Base Image
FROM python:3.8.20-bullseye
# Install required system dependencies and clean up apt cache
RUN apt-get update && apt-get install -y \
wget \
cmake \
g++ \
make \
zlib1g-dev \
libjemalloc-dev \
unzip \
git \
ncbi-blast+ \
&& rm -rf /var/lib/apt/lists/* # Clean apt cache to reduce image size
# Install Python dependencies
RUN pip install biopython==1.75 ete3==3.1.2 tqdm==4.66.4 six==1.17.0
# Clone EukPhylo repository
RUN git clone -b Docker https://github.com/Katzlab/EukPhylo.git
# Install VSEARCH
RUN wget https://github.com/torognes/vsearch/releases/download/v2.21.0/vsearch-2.21.0-linux-aarch64.tar.gz && \
tar xzf vsearch-2.21.0-linux-aarch64.tar.gz && \
mv vsearch-2.21.0-linux-aarch64 /usr/local/vsearch && \
ln -s /usr/local/vsearch/bin/vsearch /usr/local/bin/vsearch && \
rm -rf vsearch-2.21.0-linux-aarch64.tar.gz
# Compile DIAMOND v2.1.11 from source
RUN wget https://github.com/bbuchfink/diamond/archive/refs/tags/v2.1.11.tar.gz && \
tar xzf v2.1.11.tar.gz && \
cd diamond-2.1.11 && \
mkdir build && cd build && \
cmake .. && \
make -j$(nproc) && \
cp diamond /usr/local/bin/ && \
cd ../.. && rm -rf diamond-2.1.11 v2.1.11.tar.gz
# Verify DIAMOND installation
RUN diamond --version
# Verify installations
RUN diamond --version && vsearch --version && blastn -version
# Ensure executables are accessible
ENV PATH="$PATH:/usr/local/vsearch/bin:/usr/local/bin"
# Change executable permissions on wrapper script
RUN chmod +x /EukPhylo/PTL1/Transcriptomes/Scripts/wrapper_submit.sh
# Set container entrypoint
ENTRYPOINT ["bash", "/EukPhylo/PTL1/Transcriptomes/Scripts/wrapper_submit.sh"]