Как запустить приложение Shiny удаленно через Интернет?

378
Tendero

Я практически ничего не знаю о серверах, но у меня есть довольно специфический вопрос, который, я думаю, вы, ребята, можете мне помочь. Дайте мне знать, если это слишком расплывчато.

Я на Ubuntu 16.04. У меня есть сценарий R, который имеет 4 входных параметра (файл CSV и 3 целых числа) и 3 выхода (2 графика и файл CSV). Код работает на GPU, и у меня есть мощный компьютер. Я хочу, чтобы программа была доступна из любого места в Интернете, но код должен всегда выполняться на моем ПК (на котором есть вычислительный блок на GPU). Я смог добиться этого для любого компьютера в моей сети, получая доступ к приложению с помощью URL-адреса http://192.168.x.x/app_name, где 192.168.x.xнаходится локальный IP-адрес ПК с графическим процессором.

Есть ли способ сделать это возможным где-нибудь в Интернете? А именно, можно ли разрешить компьютерам вне моей локальной сети использовать приложение, запущенное на блестящем сервере, который я настроил? Я думаю, что мой вопрос такой же, как и этот, но решение там не относится к моему делу, потому что мой IP-адрес не относится к классу А. Я новичок, поэтому я не знаю, что такое «переадресация портов». или как это сделать.

0
Ни один IP-адрес не является классом А, потому что классы не существуют с 1993 года. Этот ответ, на который вы ссылаетесь, к сожалению, полон ошибок. Нет никакой связи между несуществующим «классом» IP-адреса и возможностью размещения сервера. Все IP-адреса могут размещать серверы, а все глобальные IP-адреса могут размещать серверы в глобальном Интернете. Michael Hampton 6 лет назад 0
@MichaelHampton Здравствуйте, Майкл, спасибо за ваши комментарии. Почему вы думаете, что переадресация портов является ключом к этому вопросу? Это путь? Я на самом деле ищу способ сделать мой Shiny-сервер (безопасным) доступным из Интернета. Является ли переадресация порта решением? Tendero 6 лет назад 0
Переадресация портов действительно является решением. Потратьте несколько минут, чтобы изучить связанный ответ, так как есть несколько концепций, с которыми вы должны быть знакомы, чтобы вы глубоко понимали, почему это решение и как оно работает. Michael Hampton 6 лет назад 0
@MichaelHampton Я посмотрю на это, спасибо. Это безопасно? Или кто-нибудь из Интернета сможет получить доступ к моей локальной сети, если я выполню эти действия? Tendero 6 лет назад 0
Сначала прочитайте связанный ответ, так как на оба этих вопроса есть ответы. Michael Hampton 6 лет назад 0

1 ответ на вопрос

0
Tom

Вы можете сделать компьютер доступным в Интернете, используя SSH, но затем вам нужно скопировать файлы через SCP. Вы также можете написать, например, веб-интерфейс, откуда вы можете загружать файлы на свой сервер, а затем позволить веб-серверу выполнить ваш скрипт и вернуть результаты на веб-странице (для графиков) и ссылке для скачивания (для файла CSV).

Похожие вопросы