我使用docker-compose
安装了Shinyproxy。
当我使用闪亮的应用程序时,我遇到了错误:
状态码: 500 消息:无法启动容器
当检查错误消息时,我看到:
启动容器进程导致\“ exec:\\” R \\“:在$ PATH \”中找不到可执行文件:“未知”}
我不确定这意味着什么。 如果有帮助,我的Shiny Dockerfile的最后几行是:
EXPOSE 3838
CMD ["R", "-e", "shiny::runApp('/root/app')"]
,在我的application.yml
中,container-cmd
行是
container-cmd: ["R", "-e", "shiny::runApp('/root/app')"]
您看到拼写错误吗?
作为一个仅供参考,但我不知道这是否有用,我注意到:
-我的文件夹中没有R文件夹:/usr/lib
-并且/usr/bin/
中没有R文件夹。
而且我不明白为什么。
感谢您的帮助!
EDIT1:
我刚刚安装了R,现在我在/usr/bin/
文件夹中看到了R,但是在/usr/lib
中仍然没有看到R,并且仍然显示了相同的错误消息。
EDIT2:
我不了解一件事,我看到/usr/local/lib/R
但安装了R包
docker-compose up
完成后,我在此文件夹中看不到任何内容:
$ cd /usr/local/lib
$ ls
$
EDIT3:
根据要求,我将 RStudio 容器的Dockerfile和 Shiny 容器的Dockerfile附加在下面:
RStudio Dockerfile:
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')"]