我正在尝试学习如何使用Shinyproxy部署闪亮的应用程序,并且我正在使用模板化的“ euler 应用程序”(来自此repo),但是当我导航到http://localhost:4445
. 这是我能找到的最相似的问题,但不幸的是对我的问题没有帮助:链接。
背景
所有安装似乎都很好,我成功安装了 Docker 和 Java。
Dockerfile 和 Docker 镜像在本地工作,没有问题。该命令docker run --rm -p 3838:3838 shiny-euler-app
有效。
这是我的 Dockerfile(从repo复制):
FROM openanalytics/r-base
MAINTAINER Tobias Verbeke "tobias.verbeke@openanalytics.eu"
# system libraries of general use
RUN apt-get update && apt-get install -y \
sudo \
pandoc \
pandoc-citeproc \
libcurl4-gnutls-dev \
libcairo2-dev \
libxt-dev \
libssl-dev \
libssh2-1-dev \
libssl1.1
# system library dependency for the euler app
RUN apt-get update && apt-get install -y \
libmpfr-dev
# basic shiny functionality
RUN R -e "install.packages(c('shiny', 'rmarkdown'), repos='https://cloud.r-project.org/')"
# install dependencies of the euler app
RUN R -e "install.packages('Rmpfr', repos='https://cloud.r-project.org/')"
# copy the app to the image
RUN mkdir /root/euler
COPY euler /root/euler
COPY Rprofile.site /usr/lib/R/etc/
EXPOSE 3838
CMD ["R", "-e", "shiny::runApp('/root/euler')"]
同样,Shinyproxy 在默认的openanalytics/shinyproxy-demo
Docker 镜像上也能正常工作,如您所见:
问题
我遇到的问题是当我尝试提供不同的 Shiny 应用程序及其随附的application.yml
. 这是application.yml
我正在使用的文件(我试图使其尽可能基本,没有身份验证等):
proxy:
title: Standalone Docker Engine
port: 4445
authentication: none
docker:
url: http://localhost:2375
specs:
- id: euler
display-name: Euler's number
container-cmd: ["R", "-e", "shiny::runApp('/root/euler')"]
container-image: shiny-euler-app
不幸的是,当我运行java -jar shinyproxy-2.4.2.jar
(在包含shinyproxy-2.4.2.jar
文件和application.yml
文件的目录中)时,我得到了这个空白网页:
出于某种原因,我可以访问Shinyproxy 网页,但是 Dockerized Shiny 应用程序没有出现。
非常感谢任何关于我可以在哪里/如何尝试解决这个问题的有用建议。谢谢!