To publish a R shiny application on the SESYNC server, your files will need to be copied from your working directory to the shiny-apps-data shared folder (/nfs/shiny-apps-data on RStudio Server). Please contact SESYNC IT staff if you would like to host an app on SESYNC’s Shiny Server for the duration of your project’s lifecycle.
To sync changes to the application between your working directory (which we will call the development version of the app) and shiny-apps-data (the published version), it is recommended that you use GitLab. Here are the basic steps:
To make sure all packages your application needs are installed on the SESYNC shiny server, please follow these steps.
# List the package and version as below dependencies <- read.csv(textConnection(" Package, Min.Version, repo dplyr, 0.5.0, raster, 2.5.8, leaflet, 184.108.40.20600, rstudio/leaflet ggplot2, 2.0.1, "), stringsAsFactors = FALSE, strip.white = TRUE) ## No changes necessary below. ## # Import installed package versions pkgs <- installed.packages() rownames(pkgs) <- c() pkgs <- data.frame(pkgs, stringsAsFactors = FALSE) # Compare requirements to installed packages pkgs <- merge(dependencies, pkgs, by="Package", all.x=TRUE) # Filter out packages meeting minimum version requirement pkgs <- pkgs[mapply(compareVersion, pkgs$Min.Version, pkgs$Version) > 0, ] # Install missing and newer packages cran <- pkgs[is.na(pkgs$repo), ] lapply(cran$Package, install.packages) github <- pkgs[!is.na(pkgs$repo), ] lapply(github$repo, devtools::install_github) # Require dependencies [optional] lapply(dependencies$Package, require, character.only=TRUE)
2. Add “source(dependencies.R)” to the top of your app.R single-file Shiny script.