File size: 2,002 Bytes
8bdf52a
 
 
 
9a25e9f
 
 
8bdf52a
9a25e9f
 
8bdf52a
5c01795
09247c2
 
 
2b83846
12761b6
8bdf52a
 
09247c2
8bdf52a
d6cd62b
8bdf52a
 
 
 
 
d6cd62b
8bdf52a
 
 
d6cd62b
8bdf52a
 
d6cd62b
8bdf52a
 
 
 
 
09247c2
d6cd62b
8bdf52a
 
12761b6
 
 
a8f4608
 
 
 
 
d6cd62b
8bdf52a
 
822767d
8bdf52a
 
 
822767d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Use an official miniconda3 as a parent image
FROM mambaorg/micromamba


USER root
RUN usermod -u 1000 $MAMBA_USER
USER $MAMBA_USER

# Set the working directory in the container to /app
WORKDIR /app
# Create a new environment using mamba with specified packages
RUN micromamba install -n base -c conda-forge -c bioconda -y python=3.10 pip biopython s3fs
RUN micromamba install -n base -c conda-forge -c bioconda -y nglview tqdm matplotlib pandas 
RUN micromamba install -n base -c conda-forge -c bioconda -y openpyxl pyarrow python-box xmlschema seaborn numpy py3Dmol pyranges scipy pyyaml zarr numcodecs 
RUN micromamba install -n base -c conda-forge -c bioconda -y pybigwig networkx plotly pysam requests seqlogo MOODS urllib3 pyliftover gprofiler-official pyfaidx
RUN micromamba install -n base -c conda-forge -y dash-bio

ARG MAMBA_DOCKERFILE_ACTIVATE=1
# Activate the environment and install additional packages via pip
RUN pip3 install gradio  
USER root
RUN mkdir /data
RUN apt-get update && apt-get install -y --no-install-recommends \
    git \
    ssh \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

USER $MAMBA_USER

# copy modules from local to container
COPY --chown=$MAMBA_USER:$MAMBA_USER modules /app/modules

# copy modules from local to container
COPY --chown=$MAMBA_USER:$MAMBA_USER app /app/app

# copy modules from local to container
# COPY --chown=$MAMBA_USER:$MAMBA_USER data /app/data

# Clone a specific git repository and install it as an editable package

RUN cd modules/proscope &&  \
    pip3 install .

RUN cd modules/atac_rna_data_processing &&  \
    pip3 install .

# clean all mamba caches and remove unnecessary files
RUN micromamba clean --all --yes



WORKDIR /app

# Make port 80 available to the world outside this container
EXPOSE 7860
# Set the working directory where your app resides

# Command to run the Gradio app automatically
CMD ["python", "app/main.py", "-p", "7860", "-s", "-u", "s3://2023-get-xf2217/get_demo_test_data", "-d", "/data"]