-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
30a6b38
commit 83f1fb4
Showing
8 changed files
with
83 additions
and
44 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
# This Dockerfile is used for cryolo | ||
FROM continuumio/miniconda | ||
|
||
ARG groupid | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
# This Dockerfile is used for CTFFind4 | ||
FROM python:3.10 | ||
|
||
ENV VIRTUAL_ENV=/venv | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
# This Dockerfile is used for Relion's own motion correction and Relion postprocessing | ||
# First stage builds relion | ||
FROM rockylinux:8 AS relion-build | ||
|
||
# Get required build packages and libraries | ||
RUN yum install gcc gcc-c++ cmake openmpi -y | ||
RUN yum install fftw-devel libtiff-devel libpng-devel libjpeg-devel zlib-devel -y | ||
|
||
# Build Relion - need to be on the ver4.0 tag | ||
RUN mkdir -p /install/relion4.0 | ||
COPY packages/relion_fork /install/relion_src | ||
RUN mkdir /install/relion_src/build | ||
|
||
RUN cmake -DCMAKE_INSTALL_PREFIX=/install/relion4.0 -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DMPI_C_COMPILER=/usr/lib64/openmpi/bin/mpicc -DMPI_CXX_COMPILER=/usr/lib64/openmpi/bin/mpicxx -DMPI_C_LIBRARIES=/usr/lib64/openmpi/lib/libmpi.so -DMPI_CXX_LIBRARIES=/usr/lib64/openmpi/lib/libmpi.so -DGUI=OFF -DALTCPU=ON -DDoublePrec_CPU=OFF -DFORCE_OWN_FFTW=ON -DAMDFFTW=ON -B/install/relion_src/build -S/install/relion_src | ||
RUN make --directory=/install/relion_src/build/ install | ||
|
||
|
||
# Second stage combines the Relion build with a python environment | ||
FROM rockylinux:9 | ||
|
||
# Create EM user | ||
ARG groupid | ||
ARG userid | ||
ARG groupname | ||
RUN groupadd -r -g "${groupid}" "${groupname}" && useradd -r -M "${groupname}" -u "${userid}" -g "${groupname}" | ||
|
||
# Install libraries for Relion | ||
RUN yum install openmpi fftw-devel libtiff-devel libpng-devel libjpeg-devel python3.11 zlib-devel -y | ||
|
||
# Copy Relion | ||
RUN mkdir -p /install/relion4.0 | ||
COPY --from=relion-build /install/relion4.0 /install/relion4.0 | ||
ENV PATH="/install/relion4.0/bin:${PATH}" | ||
RUN chown -R "${userid}":"${groupid}" install | ||
|
||
# Make the python virtual environment and install cryoem-services | ||
ENV VIRTUAL_ENV=/venv | ||
RUN python3.11 -m venv $VIRTUAL_ENV | ||
ENV PATH="$VIRTUAL_ENV/bin:$PATH" | ||
COPY --chown="${userid}":"${groupid}" packages/cryoem-services ./cryoem-services | ||
RUN python3.11 -m pip install --upgrade pip && python3.11 -m pip install ./cryoem-services | ||
|
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,32 @@ | ||
FROM cryoem-services:gpu | ||
# This Dockerfile is used for GPU AreTomo2 processing | ||
FROM nvidia/cuda:12.4.1-runtime-rockylinux8 | ||
|
||
# Create EM user | ||
ARG groupid | ||
ARG userid | ||
ARG groupname | ||
RUN groupadd -r -g "${groupid}" "${groupname}" && useradd -r -M "${groupname}" -u "${userid}" -g "${groupname}" | ||
|
||
# Set up conda environment | ||
RUN curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-$(uname)-$(uname -m).sh" | ||
RUN bash Mambaforge-$(uname)-$(uname -m).sh -b -p "conda" | ||
|
||
RUN source "/conda/etc/profile.d/conda.sh" && source "/conda/etc/profile.d/mamba.sh" && mamba create -c conda-forge -p /install/pythonenv python=3.10 pip libtiff=4.4.0 --override-channels -y | ||
RUN chmod -R a+x /install/pythonenv/bin | ||
|
||
# Install cryoem-services | ||
RUN mkdir /install/cryoem-services | ||
COPY packages/cryoem-services /install/cryoem-services | ||
RUN source "/conda/etc/profile.d/conda.sh" && conda activate /install/pythonenv && pip install /install/cryoem-services | ||
RUN chown -R "${userid}":"${groupid}" install | ||
ENV PATH=/install/pythonenv/bin:${PATH} | ||
|
||
# Install IMOD | ||
COPY --chown="${userid}":"${groupid}" packages/imod-4.11.1 /IMOD/4.11.1 | ||
WORKDIR /IMOD/4.11.1 | ||
ENV PATH=/IMOD/4.11.1/IMOD/bin/realbin:${PATH} | ||
RUN chmod +x /IMOD/4.11.1 | ||
|
||
# Install AreTomo | ||
COPY --chown="${userid}":"${groupid}" packages/aretomo-1.3.0 /AreTomo/1.3.0 | ||
WORKDIR /AreTomo/1.3.0 | ||
RUN rm AreTomo && ln -s AreTomo_1.3.0_Cuda102_09292022 AreTomo | ||
ENV PATH=/AreTomo/1.3.0:${PATH} | ||
RUN chmod +x /AreTomo/1.3.0 | ||
COPY --chown="${userid}":"${groupid}" packages/AreTomo2 /AreTomo2 | ||
ENV PATH=/AreTomo2:${PATH} | ||
RUN chmod +x /AreTomo2 |