J'essaie de mettre des applications brillantes à la disposition de mes collègues sans qu'ils aient à exécuter ou même à installer R.
J'ai donc lu cette page Web et j'ai trouvé cette phrase:
Si vous êtes familier avec l'hébergement Web ou si vous avez accès à un service informatique, vous pouvez héberger vous-même vos applications Shiny.
sous la section « Partager en tant que page Web ».
Comment puis-je faire ceci?
Le problème est que mon entreprise est liée à certaines restrictions concernant l'hébergement Web et la sécurité et ainsi de suite, et ne paiera pas (pour l'instant) un shiny-server-pro.
Mais la phrase ci-dessus me donne l'espoir de mettre en place quelque chose nous-mêmes pour les convaincre.
r
web-hosting
shiny
shiny-server
schlusie
la source
la source
Réponses:
Si votre PC et les PC de vos collègues appartiennent au même LAN, cela est assez facile à réaliser. Exécutez simplement votre application via:
La valeur définie via l'
host
argument indique d'accepter toute connexion (pas seulement de localhost). L'port
argument peut prendre n'importe quelle valeur que vous voulez (assurez-vous simplement d'éviter de sélectionner les ports utilisés par d'autres services commessh
ouhttp
). Ensuite, prenez note de votre adresse IP locale (si vous êtes sous Linux, vous pouvez la voir à traversifconfig
). Dites que votre adresse IP l'est192.168.1.70
. Vos collègues peuvent utiliser votre application en insérant dans la barre d'adresse de leur navigateur192.168.1.70:5050
, c'est-à-dire votre adresse IP suivie:
du numéro de port que vous avez sélectionné.Si vous souhaitez accéder depuis l'extérieur de votre réseau local, vous pouvez diriger votre routeur vers votre PC lorsque quelqu'un se connecte à votre adresse IP publique via le port 5050.
la source
Partager des applications sur le LAN comme celui-ci est plutôt cool, mais c'est une sorte de piratage. Je l'ai essayé avec des collègues, et cela fonctionne, mais c'est plus une astuce de bureau qu'une solution durable.
Je viens de terminer le développement du package RInno pour ce problème précis, c'est-à-dire lorsqu'une entreprise ne paiera pas pour Shiny Server ou qu'il y a des problèmes de sécurité avec les services cloud.
Pour commencer:
Ensuite, il vous suffit d'appeler deux fonctions pour créer un cadre d'installation:
Si vous souhaitez inclure R pour vos collègues qui ne l'ont pas installé, ajoutez
include_R = TRUE
àcreate_app
:Il inclut par défaut shiny, magrittr et jsonlite, donc si vous utilisez d'autres packages comme ggplot2 ou plotly, ajoutez-les simplement à l'
pkgs
argument. Vous pouvez également inclure des packages GitHub dans l'remotes
argument:Si vous êtes intéressé par d'autres fonctionnalités, consultez FI Labs - RInno
la source
Vous voudrez peut-être jeter un coup d'œil à la solution open source shinyproxy .
En utilisant shinyproxy, vous devrez envelopper vos applications dans un conteneur Docker pour les héberger.
Ici, vous pouvez trouver un guide sur la façon de déployer une application brillante dans un conteneur Docker (ce qui est une bonne pratique, même sans utiliser shinyproxy, pour maintenir les dépendances de l'application).
Il existe différentes méthodes d'authentification et de mise à l'échelle disponibles.
la source
J'ai récemment installé Shiny sur un serveur Linux Centos 7 que nous avons localement. Nous avons utilisé le guide ci-dessous pour la plupart. https://www.vultr.com/docs/how-to-install-shiny-server-on-centos-7
N'hésitez pas à poser des questions sur les problèmes de configuration ici afin que toute autre personne utilisant le guide puisse voir les réponses!
Nous avons également envisagé de le pousser sur un serveur AWS, optant pour le nôtre car le contenu est sensible. Sinon, les deux solutions se ressemblaient. Le système Linux et Shiny sont légers, vous pourrez peut-être l'exécuter sur le serveur Amazon gratuit!
la source