Estoy tratando de hacer que las aplicaciones brillantes estén disponibles para mis compañeros de trabajo sin que tengan que ejecutarlas o incluso tener R instalado.
Entonces leí esta página web y encontré esta oración:
Si está familiarizado con el alojamiento web o tiene acceso a un departamento de TI, puede alojar sus aplicaciones Shiny usted mismo.
en " Compartir como página web" ".
¿Cómo puedo hacer esto?
El problema es que mi empresa está sujeta a ciertas restricciones con respecto al alojamiento web y la seguridad, y así sucesivamente, y (por ahora) no pagará por un shiny-server-pro.
Pero la oración anterior me da la esperanza de establecer algo nosotros mismos para convencerlos.
r
web-hosting
shiny
shiny-server
schlusie
fuente
fuente
Respuestas:
Si su PC y las PC de sus compañeros de trabajo pertenecen a la misma LAN, esto es bastante fácil de lograr. Simplemente ejecute su aplicación a través de:
El valor establecido a través del
host
argumento dice aceptar cualquier conexión (no solo desde localhost). Elport
argumento puede asumir cualquier valor que desee (solo asegúrese de evitar seleccionar puertos utilizados por otros servicios comossh
ohttp
). Luego, tome nota de su IP local (si está bajo Linux, puede verlaifconfig
). Digamos que su IP es192.168.1.70
. Sus colegas pueden usar su aplicación insertando en la barra de direcciones de su navegador192.168.1.70:5050
, es decir, su IP seguida de:
y el número de puerto que seleccionó.Si desea acceder desde fuera de su LAN, puede dirigir su enrutador a su PC cuando alguien se conecte a su IP pública a través del puerto 5050.
fuente
Compartir aplicaciones a través de la LAN como esta es bastante bueno, pero es una especie de truco. Lo probé con algunos compañeros de trabajo y funciona, pero es más un truco de oficina que una solución sostenible.
Acabo de terminar de desarrollar el paquete RInno para este problema exacto, es decir, cuando una empresa no paga por Shiny Server o hay problemas de seguridad con los servicios en la nube.
Para empezar:
Entonces solo necesita llamar a dos funciones para crear un marco de instalación:
Si desea incluir R para sus compañeros de trabajo que no lo tienen instalado, agregue
include_R = TRUE
acreate_app
:De forma predeterminada, incluye shiny, magrittr y jsonlite, por lo que si está utilizando otros paquetes como ggplot2 o plotly, simplemente agréguelos al
pkgs
argumento. También puede incluir paquetes de GitHub en elremotes
argumento:Si está interesado en otras funciones, consulte FI Labs - RInno
fuente
Es posible que desee echar un vistazo a la solución de código abierto shinyproxy .
Con shinyproxy, tendrá que envolver sus aplicaciones en un contenedor de ventana acoplable para alojarlas.
aquí puede encontrar una guía sobre cómo implementar una aplicación brillante en un contenedor de ventana acoplable (que por cierto es una buena práctica, incluso sin usar shinyproxy, para mantener las dependencias de la aplicación).
Hay diferentes métodos de autenticación y escalado disponibles.
fuente
Recientemente instalé Shiny en un servidor Centos 7 Linux OS que tenemos localmente. Usamos la guía a continuación en su mayor parte. https://www.vultr.com/docs/how-to-install-shiny-server-on-centos-7
¡No dude en hacer cualquier pregunta sobre problemas de configuración aquí para que cualquier otra persona que use la guía pueda ver las respuestas!
También buscamos subirlo a un servidor de AWS, optamos por el nuestro ya que el contenido es confidencial. De lo contrario, ambas soluciones parecían similares. El sistema Linux y Shiny son livianos, ¡es posible que pueda ejecutarlo en el servidor gratuito de Amazon!
fuente