Udostępnianie aplikacji w sieci LAN w ten sposób jest całkiem fajne, ale to trochę hack. Wypróbowałem to z niektórymi współpracownikami i działa, ale jest to bardziej biurowa sztuczka niż trwałe rozwiązanie.
Właśnie skończyłem opracowywać pakiet RInno dla dokładnie tego problemu, tj. Kiedy firma nie zapłaci za Shiny Server lub istnieją obawy dotyczące bezpieczeństwa usług w chmurze.
Rozpocząć:
install.packages("RInno")
require(RInno)
RInno::install_inno()
Następnie wystarczy wywołać dwie funkcje, aby utworzyć platformę instalacyjną:
create_app(app_name = "myapp", app_dir = "path/to/myapp")
compile_iss()
Jeśli chcesz dołączyć R dla swoich współpracowników, którzy go nie mają, dodaj include_R = TRUE
do create_app
:
create_app(app_name = "myapp", app_dir = "path/to/myapp", include_R = TRUE)
Domyślnie zawiera błyszczące, magrittr i jsonlite, więc jeśli używasz innych pakietów, takich jak ggplot2 lub plotly, po prostu dodaj je do pkgs
argumentu. Możesz również dołączyć pakiety GitHub do remotes
argumentu:
create_app(
app_name = "myapp",
app_dir = "path/to/myapp"
pkgs = c("shiny", "jsonlite", "magrittr", "plotly", "ggplot2"),
remotes = c("talgalili/installr", "daattali/shinyjs"))
Jeśli jesteś zainteresowany innymi funkcjami, sprawdź FI Labs - RInno