Search code examples
shinyshinyproxy

ShinyProxy App Configuration Issue


I am trying to run the euler app provided in the link: http://www.shinyproxy.io/deploying-apps/

I have had the dockerfile to SUCCESFULLY BUILD via: the euler

FROM openanalytics/r-base

MAINTAINER Tobias Verbeke "tobias.verbeke@openanalytics.eu"


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.0.0

RUN apt-get update && apt-get install -y \
    libmpfr-dev

RUN R -e "install.packages(c('shiny', 'rmarkdown', repos='https://cloud.r-project.org/')"

RUN R -e "install.packages('Rmpfr', repos='https://cloud.r-project.org/')"

RUN mkdir /etc/euler
COPY euler /etc/euler

COPY Rprofile.site /usr/lib/R/etc/

EXPOSE 3838

CMD ["R", "-e shiny::runApp('/etc/euler')"]

I have trouble figuring out how to set up the .yml within the java.jar file. here is my current setup under "apps"

apps:
  - name: 01_hello
    docker-cmd: ["R", "-e shinyproxy::run_01_hello()"]
    docker-image: openanalytics/shinyproxy-demo
    ldap-groups: scientists, mathematicians
  - name: 06_tabsets
    docker-cmd: ["R", "-e shinyproxy::run_06_tabsets()"]
    docker-image: openanalytics/shinyproxy-demo
    ldap-groups: scientists
  - name: Euler
    docker-cmd: ["R", "-e shiny::runApp(etc/euler)"]
    docker-image: openanalytics/r-base
    ldap-groups: scientists

Once I am on the localhost page, I am able to login and view the apps. "Euler" is listed along with the other apps . However once I click Euler. I see on the terminal that the container is unresponsive trying again (1/20). The other apps seem to be working properly.
What am I doing wrong?


Solution

  • There are quotes missing in the Docker command (in the application.yml file):

    docker-cmd: ["R", "-e shiny::runApp(etc/euler)"]

    should be

    docker-cmd: ["R", "-e shiny::runApp('etc/euler')"].

    Note that the application.yml file has to be in the same directory as the shinyproxy_*.jar file - there is no need to fiddle with anything inside the .jar file.