1

我使用docker-compose.

转到我闪亮的应用程序时,我遇到了错误:

状态码: 500 消息: 无法启动容器

在检查错误消息时,我看到:

启动容器进程导致 \"exec: \\"R\\": executable file not found in $PATH\": unknown"}

我不确定它是什么意思。如果有帮助,我的 Shiny Dockerfile 的最后几行是:

EXPOSE 3838
CMD ["R", "-e", "shiny::runApp('/root/app')"]

在我application.ymlcontainer-cmd行是 container-cmd: ["R", "-e", "shiny::runApp('/root/app')"]

你看到任何错误的拼写吗?

另外作为一个仅供参考,但不知道这是否有用的信息,我注意到: - 我的文件夹中没有 R 文件夹:/usr/lib - 并且/usr/bin/. 我不明白为什么。

谢谢你的帮助 !

编辑1:

我刚刚安装了 R,现在我在/usr/bin/文件夹中看到了 R,但仍然没有任何内容,/usr/lib并且仍然有相同的错误消息。

编辑2:

我不明白一件事,我看到 R 包被安装在/usr/local/lib/RBUT

在此处输入图像描述

完成后我在此文件夹中看不到任何docker-compose up内容:

$ cd /usr/local/lib
$ ls
$

编辑3:

根据要求,我在我的RStudio容器的 Dockerfile 和Shiny容器的 Dockerfile 下方附加:

RStudio Docker 文件:

FROM rocker/tidyverse:3.6.1

## Create directories
RUN mkdir -p /rstudio
RUN mkdir -p /rscripts

RUN R -e "install.packages(c('rvest','shiny','DT', 'digest', 'RCurl', 'caTools', 'bitops', 'httr', 'curl', 'stringr', 'mailR', 'xlsx', 'knitr', 'kableExtra' ,'rmarkdown', 'data.table', 'RSelenium'), repos = 'http://cran.us.r-project.org')"

闪亮的 Dockerfile:

FROM rocker/shiny:3.5.1

RUN apt-get update && apt-get install libcurl4-openssl-dev libv8-3.14-dev -y &&\
    mkdir -p /var/lib/shiny-server/bookmarks/shiny &&\
    mkdir -p /root/app

# Download and install library
RUN R -e "install.packages(c('mailR', 'shinydashboard', 'shinyjs', 'V8', 'DT', 'shiny', 'rvest', 'dplyr', 'htmltools', 'promises', 'jsonlite', 'data.table', 'rlang', 'xml2', 'digest', 'XML','rmarkdown'))"

# copy the app to the image
COPY app /root/app
COPY Rprofile.site /usr/local/lib/R/etc

# make all app files readable (solves issue when dev in Windows, but building in Ubuntu)
RUN chmod -R 755 /root/app
RUN chmod -R 755 /usr/local/lib/R/etc

EXPOSE 3838

CMD ["R", "-e", "shiny::runApp('/root/app')"]
4

0 回答 0