Size: a a a

R (язык программирования)

2021 January 11

ДВ

Дмитрий Володин... in R (язык программирования)
Daryna Ivaskevych
И локальная сеть более контролируемая чем чужие сервисы)
Ну вот да, вопрос тут к вам, насколько она безопаснее. Но вообще вроде у shinyapps.io при платном варианте всё неплохо с ограничением доступа
источник

EP

Ed P in R (язык программирования)
Daryna Ivaskevych
О, спасибо)) На крайний случай, я и shinyapps.io рассматривала, но бесплатный хостинг с авторизацией звучит отлично)

Но у меня возникает вопрос: нет ли там рисков по безопасности конфиденциальной информации? А то как-то предложение слишком хорошее)
а у вас какая отрасль? вполне может получиться так, что ваши клиенты тоже не могут грузить данные куда попало, даже если они и под замком.

Если вы в роли вендора, то я бы предложил поставить шайни-студию на сервере клиента, и дальше уже клиентские админы пусть парятся с доступом к сети. В самой шайни-студии можно настроить LDAP или OpenID, чтобы ограничить доступ внутри сети.

Если клиенту лень настраивать, бюджет позволяет и данные нужно просто закрыть, а где они лежат - не так важно, то платные версии шайни сервера или shinyapps наверное проще.

Совсвем хардкор - запилить standalone на шайни, но тогда он становится уже не таким многопользовательским.
источник

БА

Байкулов Антон... in R (язык программирования)
Дмитрий Володин
Не смогут, его видите только вы. А то тогда получается, что и на десктопе можно теоретические запустить sninyApp и из внутренней сети его увидят. Но это же не так.

Попробуйте подумать в сторону докера, например.
А у меня получалось. Запускаешь shiny-app в сеансе R-Studio Server и настраиваешь порт для доступа. Я даже домен привязывал.

Но я так больше не делаю)
источник

DI

Daryna Ivaskevych in R (язык программирования)
Ed P
а у вас какая отрасль? вполне может получиться так, что ваши клиенты тоже не могут грузить данные куда попало, даже если они и под замком.

Если вы в роли вендора, то я бы предложил поставить шайни-студию на сервере клиента, и дальше уже клиентские админы пусть парятся с доступом к сети. В самой шайни-студии можно настроить LDAP или OpenID, чтобы ограничить доступ внутри сети.

Если клиенту лень настраивать, бюджет позволяет и данные нужно просто закрыть, а где они лежат - не так важно, то платные версии шайни сервера или shinyapps наверное проще.

Совсвем хардкор - запилить standalone на шайни, но тогда он становится уже не таким многопользовательским.
Под клиентом я подразумевала клиента сервера, не бизнеса) Потому это все вопросы безопасности и сохранности данных компании. На сколько хорошо сделана локальная сеть мне не известно, я буду просто считать наших сисадминов хорошими) Если они таковыми не окажутся, проблема будет не моя))
источник

DI

Daryna Ivaskevych in R (язык программирования)
Байкулов Антон
А у меня получалось. Запускаешь shiny-app в сеансе R-Studio Server и настраиваешь порт для доступа. Я даже домен привязывал.

Но я так больше не делаю)
О, а почему?) Слишком больно настраивать?)
источник

DI

Daryna Ivaskevych in R (язык программирования)
Я вот как раз думала, что так должно получаться)
источник

БА

Байкулов Антон... in R (язык программирования)
Погуглил как ставить на shiny-server=) Спасибо умным людям - пишут туториалы, а гугл переводит=)
источник

DI

Daryna Ivaskevych in R (язык программирования)
А, то есть это просто удобнее?) Мне не до конца понятно, зачем нужен shiny-server если прокатывает и без него))
источник

БА

Байкулов Антон... in R (язык программирования)
Daryna Ivaskevych
А, то есть это просто удобнее?) Мне не до конца понятно, зачем нужен shiny-server если прокатывает и без него))
Он прям предназначен для этого.
источник

DI

Daryna Ivaskevych in R (язык программирования)
Ладно, просто приму тот факт что он нужен))
источник

DI

Daryna Ivaskevych in R (язык программирования)
А то обидно будет все настроить и потом переделывать
источник

EP

Ed P in R (язык программирования)
Daryna Ivaskevych
А, то есть это просто удобнее?) Мне не до конца понятно, зачем нужен shiny-server если прокатывает и без него))
Так конечно, шайни-сервер нужен. Как же тогда R-код будет выполняться? Вариант Антона тоже содержит шайни-сервер, просто он крутится не самостоятельно, а стартует из Rstudio в момент запуска приложения. Такой "сервер" по-умолчанию доступен для локальной машины и живет пока не закроется приложение.

Технически можно извратиться и заставить приложение работать как простая html страница с JS-кодом, но это возможно только для очень примитивных случаев.

Тут по сути всего три варианта решений: https://shiny.rstudio.com/deploy/
1) либо юзать внешний облачный сервер на shinyapps (бесплатный либо платный)
2) либо юзать платный шайни-сервер on-premises
3) либо юзать бесплатный шайни-сервер on-premises, но тогда лучше выбрать не родной от Rstudio, а в виде shinyproxy либо shinystudio, т.к. они лучше собраны. У них в составе тот же бесплатны шайни-сервер с обвесками вроде IDE Rstudio, дэшборда-интерфейса, авторизации.

4) бонусный вариант: сделать standalone шайни-приложение: https://stackoverflow.com/questions/33513544/deploying-r-shiny-app-as-a-standalone-application
источник

DI

Daryna Ivaskevych in R (язык программирования)
Ed P
Так конечно, шайни-сервер нужен. Как же тогда R-код будет выполняться? Вариант Антона тоже содержит шайни-сервер, просто он крутится не самостоятельно, а стартует из Rstudio в момент запуска приложения. Такой "сервер" по-умолчанию доступен для локальной машины и живет пока не закроется приложение.

Технически можно извратиться и заставить приложение работать как простая html страница с JS-кодом, но это возможно только для очень примитивных случаев.

Тут по сути всего три варианта решений: https://shiny.rstudio.com/deploy/
1) либо юзать внешний облачный сервер на shinyapps (бесплатный либо платный)
2) либо юзать платный шайни-сервер on-premises
3) либо юзать бесплатный шайни-сервер on-premises, но тогда лучше выбрать не родной от Rstudio, а в виде shinyproxy либо shinystudio, т.к. они лучше собраны. У них в составе тот же бесплатны шайни-сервер с обвесками вроде IDE Rstudio, дэшборда-интерфейса, авторизации.

4) бонусный вариант: сделать standalone шайни-приложение: https://stackoverflow.com/questions/33513544/deploying-r-shiny-app-as-a-standalone-application
Спасибо за инструкцию к выбору) А то я немного потерялась в теме) Завтра прочту обо всех этих опциях и точно найдусь))
источник
2021 January 12

I

Igor in R (язык программирования)
Мы используем для деплоя проектов на shiny бесплатный сервер shinyproxy. Но чтобы его завести нужно немного попотеть. А вообще есть и другие варианты кроме перечисленных выше.
источник

I

Igor in R (язык программирования)
источник

АК

Артём Клевцов... in R (язык программирования)
Igor
Мы используем для деплоя проектов на shiny бесплатный сервер shinyproxy. Но чтобы его завести нужно немного попотеть. А вообще есть и другие варианты кроме перечисленных выше.
В каком месте предлагается потеть?
Завести докер с HTTP API (инструкция на оф сайте), скачать бинарник, закинуть подготовленный в соответствии с доками конфиг в директория, запустить бинарник.
источник

DI

Daryna Ivaskevych in R (язык программирования)
О, а вот эти ребята мне на глаза попадались, но мне казалось, что они предлагают готовые решения
источник

БА

Байкулов Антон... in R (язык программирования)
Понять бы как это всё работает. Например, как работает балансировщик, как происходит инициализация контейнера и отдача юзеру. Что происходит при сбое в работе контейнера. Очень любопытно, но ничего не понятно=)
источник

БА

Байкулов Антон... in R (язык программирования)
Подскажите, пожалуйста, как сделать png из таблицы, НО без rowNumber?!
источник

i

igor in R (язык программирования)
Изображение?
источник