[R-sig-Debian] R Package: 'ggbreak' in Dockerfile

James W. MacDonald
2024-10-15T13:21:54Z

Don't you have to load BiocManager before using it?

-----Original Message-----
From: R-SIG-Debian <r-sig-debian-bounces at r-project.org> On Behalf Of
Gerber, Lauren J
Sent: Tuesday, October 15, 2024 9:15 AM
To: r-sig-debian at r-project.org
Cc: dirk at eddelbuettel.com
Subject: Re: [R-sig-Debian] R Package: 'ggbreak' in Dockerfile

Hi All,

Does anyone have experience successfully installing and loading the R package
ggbreak  in a Docker container?

I ask because I have successfully used the  ggbreak  package in a script outside
the Docker container (on my local computer), but for some reason, I get the
following error message when trying to load it using library(ggbreak) or
library( ggbreak ) inside the same script that has been copied to the Docker
container:

Error in library(ggbreak) : there is no package called 'ggbreak'
Execution halted

I have tried installing  ggbreak  using Bioconductor, the  ggbreak  GitHub repo,
and the standard install.packages() function in R, and none have helped. The
image is building successfully; the issue is specifically when I run the
container, which generates the above error message. I am wondering if I am
missing some type of dependency upstream, or something else.

Please see the contents of the Dockerfile below:

FROM selenium/standalone-firefox:127.0

USER root

ENV SE_OFFLINE=true
ENV PATH "$PATH:/usr/bin/geckodriver"
ENV HOME "/root/"

RUN apt-get update \
    && apt install -y \
    software-properties-common \
    dirmngr \
    gnupg2 \
    wget \
    build-essential \
    libcurl4-openssl-dev \
    libxml2-dev \
    libasound2 \
#    libasound2t64 \
    python3 \
    python3-pip \
    python3.11-venv \
#    python3.12-venv \
    git-all \
    lsb-release \
    libxml-twig-perl \
    libc6-dev \
    vim \
    && wget -q -O -
https://urldefense.com/v3/__https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj1qvC-XQQ$
\
    | tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc  \
    && add-apt-repository -y "ppa:marutter/rrutter4.0"

RUN apt-get update -y \
    && apt-get install -y r-base\
    && apt-get clean \
    && apt-get purge \
    && rm -rf /var/lib/apt/lists/* /tmp/*

RUN pip3 install --upgrade pip wheel setuptools>5 RUN pip3 install pandas RUN
pip3 install openpyxl RUN pip3 install selenium-firefox RUN pip3 install
--no-cache-dir --upgrade rbase RUN pip3 install webdriver-manager RUN pip3
install 'rpy2>=3.5.12'
RUN pip3 install xlsxwriter

# Install additional R packages
# RUN R -e "install.packages(c('tools', 'ggplot2',
'ggbreak', 'ggrepel', 'stringr'),
repos='https://urldefense.com/v3/__http://cran.us.r-project.org__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj0ggNUwsA$
')"
RUN R -e "install.packages('tools',
repos='https://urldefense.com/v3/__http://cran.us.r-project.org__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj0ggNUwsA$
')"
RUN R -e "install.packages('ggplot2',
repos='https://urldefense.com/v3/__http://cran.us.r-project.org__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj0ggNUwsA$
')"
# RUN R -e "install.packages('ggbreak',
repos='https://urldefense.com/v3/__http://cran.us.r-project.org__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj0ggNUwsA$
')"
# RUN R -e "install.packages('remotes',
repos='https://urldefense.com/v3/__http://cran.rstudio.com/__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj1ACvaCfA$
')"
# RUN R -e "remotes::install_github('YuLab-SMU/ggbreak')"
RUN R -e "install.packages('ggrepel',
repos='https://urldefense.com/v3/__http://cran.us.r-project.org__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj0ggNUwsA$
')"
RUN R -e "install.packages('stringr',
repos='https://urldefense.com/v3/__http://cran.us.r-project.org__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj0ggNUwsA$
')"
RUN R -e "install.packages('BiocManager',
repos='https://urldefense.com/v3/__http://cran.us.r-project.org__;!!K-Hz7m0Vt54!j4qWJp3neZb132HVgGwaZ3mog2adnEcdl8X0OTb3wuUcviOwwus9E8QSsmCmKta8dZ-FmpzQOKC7qePXnj0ggNUwsA$
')"
RUN R -e "BiocManager::install('ggbreak')"

# Create an app directory
RUN mkdir /app
RUN mkdir /volume_w_htmls
RUN mkdir /volume
RUN mkdir /volume2
RUN mkdir /home/seluser/Downloads

# Set the working directory
WORKDIR /app

# Copy bash script to Docker image
COPY ./webscraping_combined_boxplots.sh /app/webscraping_combined_boxplots.sh

# Make bash script executable
RUN chmod +x /app/webscraping_combined_boxplots.sh

ENTRYPOINT ["/app/webscraping_combined_boxplots.sh"]

CMD ["param1", "param2", "param3",
"param4", "param5", "param6", "param7",
"param8", "param9", "param10",
"param11", "param12", "param13",
"param14", "param15", "param16",
"param17", "param18", "param19"]


Would you please advise?

Thank you in advance for your help.

Br,
Lauren
--
Lauren J. Gerber
Bioinformatician
Precision Systems Medicine (Kallioniemi) Research Group iCAN   Digital Precision
Cancer Medicine Flagship Institute for Molecular Medicine Finland (FIMM) Nordic
EMBL Partnership for Molecular Medicine Biomedicum Helsinki 2U, D301a1 P.O. Box
20 (Tukholmankatu 8)
FI-00014 University of Helsinki, Finland lauren.gerber at helsinki.fi

	[[alternative HTML version deleted]]