Search code examples
webshinyshiny-servershinyproxy

shinyproxy basic basics (+ some general web knowledge)


The problem

While searching for ways to deploy shiny apps I stumbled across ShinyProxy. From what I understand it's an alternative for ShinyServer. However, I lack some (very basic) knowledge to follow the guide provided.

The questions

  1. Can ShinyProxy be installed just on any bought/rented server? Do I need to preinstall some other software?
  2. Where do I type in the commands provided in the ShinyProxy guide?
  3. Does Docker need to be installed on the server or is it a tool to deploy to the server and is thus installed locally?
  4. The ShinyProxy guide misses a point about installing ShinyProxy. Why? Is it not installed (or is installation so obvious)?
  5. I couldn't actually find instructions on how to run a shiny app with ShinyProxy.

Solution

  • The authors of ShinyProxy can probably provide a much better answer, but here is my understanding:

    1. Your server needs to support Java 8 and Docker (or you can install Java 8 and Docker on your server).
    2. Assuming you logon to your server via SSH, the commands will be typed in the SSH terminal.
    3. Yes Docker needs to be installed on the server
    4. It appears that ShinyProxy does not need to be installed. You just need to download it (the shinyproxy-0.5.0.jar file) to a location on the server, and then run java -jar shinyproxy-0.5.0.jar (in your SSH terminal)
    5. To run a Shiny app, you need to package it as an R package first, then build a Docker image for the R package. The app is then actually running inside a Docker container. You also need a configuration file to tell ShinyProxy where to look for your Docker image. Example is here https://github.com/openanalytics/shinyproxy-demo