0

这是我第一次使用 Docker。我已经尝试了几次,但这是我第一次将项目容器化。latex该项目使用和生成报告officer。但是,在构建容器并运行映像后,Rstudio 显示没有安装和加载任何包。

Dockerfile

FROM rocker/verse:4.0.5

ENV RENV_VERSION 0.15.1
RUN R -e "install.packages('remotes', repos = c(CRAN = 'https://cloud.r-project.org'))"
RUN R -e "remotes::install_github('rstudio/renv@${RENV_VERSION}')"

WORKDIR /REAL
COPY . .
RUN apt-get -y update --fix-missing
#RUN apt-get -y install build-essential \
#   libssl-dev \
#   libcurl4-openssl-dev \
#   libxml2-dev \
#   libfontconfig1-dev \
#   libcairo2-dev
RUN R -e 'options(renv.consent = TRUE); renv::restore(lockfile = "/REAL/renv.lock"); renv::activate()'

构建 Docker 镜像

docker build -t reports/real . 

运行带有 rstudio 支持的 docker

docker run --rm -d -p 8787:8787 --name real_report -e ROOT=TRUE -e DISABLE_AUTH=TRUE -v C:/Users/test/sources/REAL_Reports:/home/rstudio/REAL_Reports reports/real:latest

我做错了什么,如何修复它以便renv安装和加载所有发现的软件包?

4

1 回答 1

1

运行 R -e '选项(renv.consent = TRUE);renv::restore(lockfile = "/REAL/renv.lock"); renv::activate()'

您可能需要在调用之前激活/加载您的项目restore(),或者完全放弃使用项目本地库。

https://rstudio.github.io/renv/articles/docker.html在这里也可能有用。

于 2022-01-18T16:05:41.583 回答