Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Host Shiny applications over the web.
JavaScript HTML Shell Ruby C++ R Other

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.

Shiny Server

Shiny Server is a server program that makes Shiny applications available over the web.


  • Host multiple Shiny applications, each with its own URL
  • Can be configured to allow any user on the system to create and deploy their own Shiny applications
  • Supports non-websocket-capable browsers, like IE8/9
  • Free and open source (AGPLv3 license)
  • Experimental quality. Use at your own risk!


A Linux server, with the following installed:

sudo su - -c "R -e \"install.packages('shiny', repos='')\""


  • Run as root (or sudo): npm install -g shiny-server
  • Optional: Create a config file (see below).

Quick start

Run as root (or sudo):

# Create a system account to run Shiny apps
useradd -r shiny
# Create a root directory for your website
mkdir -p /var/shiny-server/www
# Create a directory for application logs
mkdir -p /var/shiny-server/log

Next, copy your app directory to the website root, but append .shiny to the directory name. (This is very important! If the application folder does not end with .shiny it will be deployed as static assets, not a Shiny application!)

sudo cp -R ~/MY-APP /var/shiny-server/www/MY-APP.shiny

Finally, start Shiny Server:

sudo shiny-server

Now start a web browser and point it to http://<hostname>:3838/MY-APP/. (Notice that ".shiny" does not appear in the URL.)

If the browser is not able to connect to the server, configure your server's firewall to allow inbound TCP connections on port 3838.

To customize any of the above, or to explore the other ways Shiny Server can host Shiny apps, see the Configuration section below.

Running from the Command Line

  • Run sudo shiny-server
  • Optionally, you can pass a custom configuration file path (see below) as a parameter. Otherwise, /etc/shiny-server/shiny-server.conf will be assumed as the config file path.

Running from Upstart

For those UNIX systems that use the Upstart init system, such as RHEL/CentOS 6+ and Ubuntu:

  • Copy config/upstart/shiny-server.conf to /etc/init/
  • Run sudo start shiny-server to start and sudo stop shiny-server to stop.
  • Run sudo reload shiny-server to re-read the config file without needing to restart the server.

The upstart script is set to start shiny-server on boot/reboot, and it will also respawn shiny-server if it goes down.


See the document Shiny Server Configuration Reference for details.


Please direct questions to the shiny-discuss group.

Something went wrong with that request. Please try again.