Estou tentando disponibilizar aplicativos brilhantes para meus colegas de trabalho sem que eles precisem executar ou mesmo ter o R instalado.
Então eu li esta página da web e encontrei esta frase:
Se você estiver familiarizado com hospedagem na web ou tiver acesso a um departamento de TI, poderá hospedar seus aplicativos Shiny sozinho.
na seção " Compartilhar como página da web ".
Como posso fazer isso?
O problema é que minha empresa está sujeita a certas restrições em relação a hospedagem na web e segurança e assim por diante, e não vai (por enquanto) pagar por um profissional de servidor brilhante.
Mas a frase acima me dá esperança de estabelecer algo nós mesmos para convencê-los.
r
web-hosting
shiny
shiny-server
Schlusie
fonte
fonte
Respostas:
Se o seu PC e os PCs dos seus colegas de trabalho pertencem à mesma LAN, isso é muito fácil de conseguir. Basta executar seu aplicativo por meio de:
O valor definido por meio do
host
argumento diz para aceitar qualquer conexão (não apenas do host local). Oport
argumento pode assumir qualquer valor que você quiser (apenas certifique-se de evitar a seleção de portas usadas por outros serviços comossh
ouhttp
). Então, tome nota do seu IP local (se você estiver no Linux, você pode ver através deleifconfig
). Diga que seu IP é192.168.1.70
. Seus colegas podem usar seu aplicativo inserindo na barra de endereços do navegador192.168.1.70:5050
, ou seja, seu IP seguido por:
e o número da porta que você selecionou.Se você deseja acessar de fora de sua LAN, você pode direcionar seu roteador para seu PC quando alguém se conectar ao seu IP público através da porta 5050.
fonte
Compartilhar aplicativos pela LAN como este é muito legal, mas é uma espécie de hack. Experimentei com alguns colegas de trabalho e funciona, mas é mais um truque de escritório do que uma solução sustentável.
Acabei de terminar de desenvolver o pacote RInno exatamente para esse problema, ou seja, quando uma empresa não paga pelo Shiny Server ou há preocupações de segurança com serviços em nuvem.
Para começar:
Então você só precisa chamar duas funções para criar uma estrutura de instalação:
Se você gostaria de incluir R para seus colegas de trabalho que não o têm instalado, adicione
include_R = TRUE
acreate_app
:O padrão é brilhante, magrittr e jsonlite, então se você estiver usando outros pacotes como ggplot2 ou plotly, apenas adicione-os ao
pkgs
argumento. Você também pode incluir pacotes GitHub noremotes
argumento:Se você estiver interessado em outros recursos, confira FI Labs - RInno
fonte
Você pode querer dar uma olhada na solução de código aberto brilhante .
Usando o GlossProxy, você terá que embrulhar seus aplicativos em um contêiner docker para hospedá-los.
Aqui você pode encontrar um guia sobre como implantar um aplicativo brilhante em um contêiner docker (que, aliás, é uma boa prática, mesmo sem usar o proxy brilhante, para manter as dependências do aplicativo).
Existem diferentes métodos de autenticação e escalonamento disponíveis.
fonte
Recentemente, instalei o Shiny em um servidor Centos 7 Linux OS que temos localmente. Usamos o guia abaixo na maior parte. https://www.vultr.com/docs/how-to-install-shiny-server-on-centos-7
Sinta-se à vontade para fazer qualquer pergunta sobre problemas de configuração aqui, para que qualquer pessoa que use o guia possa ver as respostas!
Também examinamos a possibilidade de colocá-lo em um servidor AWS, optamos por nosso próprio, pois o conteúdo é confidencial. Caso contrário, ambas as soluções pareciam semelhantes. Os sistemas Linux e Shiny são leves, você pode executá-los no servidor Amazon gratuito!
fonte