The solution 1) isn’t viable to non technical users. The solution 2) is easier, but can be expensive. The solution 3) can involve a lot of technicalities but can be cheaper then solution 3). The solution 4) is compromise between solutions 2) and 3), and is my preference.

HOWEVER, recently i knew about a project from Docker Inc. with a good potential: the Kitematic! With Kitematic the user can have a GUI where he can download and use softwares on Docker images. So, the Docker Hub becomes something like an App Store where he can simply download and use apps installed inside docker containers. See this video to understand what Kitematic can do:

This is Huge because, once you dockerize your Shiny App, doesn’t matter how complex it is, you can share it on Docker Hub just like any app. Kitematic can be used at Windows, Mac and experimentaly on Linux. I recorded this video (in Linux) to show you how to install my dockerized shiny app with some clicks:

Remember, before you share your app you will need to dockerize it and upload to Docker Hub.