dmcable / spacexr

Spatial-eXpression-R: Cell type identification (including cell type mixtures) and cell type-specific differential expression for spatial transcriptomics
GNU General Public License v3.0
308 stars 73 forks source link

Docker image #165

Closed linhuawang closed 1 year ago

linhuawang commented 1 year ago

Hi,

Do you have any plans to dockerize spacexr? I tried integrating it into my pipeline through a docker file but had many issues setting it up. Since each turnaround time is very long, I struggle to debug the installation steps. It would be very much appreciated if a docker image could be shared.

Thank you so much.

linhuawang commented 1 year ago

Never mind, I wrote a DOCKERFILE and addressed this issue. In case anyone is interested in running Spacexr using docker, here is the Dockerfile I have and worked for me:

FROM ubuntu:latest

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends build-essential r-base-dev python3.9 python3-pip python3-setuptools python3-dev
RUN apt-get update \
    && apt-get install -y build-essential \
    && apt-get install -y wget \
    && apt-get install -y libssl-dev \
    && apt-get -y install curl \
    && apt-get install -y libhdf5-dev \
    && apt-get install -y libcurl4-openssl-dev \
    && apt-get install -y libgsl-dev \
    && apt-get install -y libxml2-dev \
    && apt-get install -y gfortran \
    && apt-get install -y r-cran-tidyverse  \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*     

# INSTALL RCTD
RUN R -e "install.packages('readr',dependencies=TRUE)"
RUN R -e "install.packages('pals',dependencies=TRUE)"
RUN R -e "install.packages('ggplot2',dependencies=TRUE)" 
RUN R -e "install.packages('Matrix',dependencies=TRUE)" 
RUN R -e "install.packages('doParallel',dependencies=TRUE)"
RUN R -e "install.packages('foreach',dependencies=TRUE)"
RUN R -e "install.packages('quadprog',dependencies=TRUE)" 
RUN R -e "install.packages('tibble',dependencies=TRUE)" 
RUN R -e "install.packages('dplyr',dependencies=TRUE)"
RUN R -e "install.packages('reshape2',dependencies=TRUE)" 
RUN R -e "install.packages('knitr',dependencies=TRUE)" 
RUN R -e "install.packages('rmarkdown',dependencies=TRUE)"
RUN R -e "install.packages('Seurat',dependencies=TRUE)"
RUN R -e "install.packages('fields',dependencies=TRUE)"
RUN R -e "install.packages('mgcv',dependencies=TRUE)" 
RUN R -e "install.packages('yaml')"
RUN R -e "install.packages('devtools')"
RUN R -e "install.packages('remotes')"
RUN R -e "remotes::install_github('satijalab/seurat-data', 'seurat5', quiet = TRUE)"
RUN R -e "devtools::install_github('dmcable/RCTD', build_vignettes = FALSE)"
dmcable commented 11 months ago

Dear @linhuawang , great, thank you for addressing this issue!

nick-youngblut commented 7 months ago

@linhuawang you are using dmcable/RCTD in your Dockerfile, but no such repo exists. I'm guessing that dmcable/RCTD has been renamed as dmcable/spacexr. Is that correct? I don't see any reference to spacexr at all in the README, which is really weird.