jupyter/tmpnb для демонстрации коммерческого веб-приложения
Я хотел создать демо-версию веб-приложения в реальном времени на основе нашего собственного пакета python. В демоверсии пользователи должны иметь возможность импортировать пакет, а затем писать и запускать в режиме реального времени простые сценарии Python, которые исследуют возможности пакета. Общедоступный экземпляр записной книжки Jupyter (в частности, реализация jupyter / tmpnb) будет оптимальным решением, но я обеспокоен тем, что пользователи смогут получить доступ к проприетарному коду Python, просто используя магические команды Jupyter (т.е. получая доступ к командам оболочки) и перемещение по желанию через систему каталогов сервера, на котором запущен публичный экземпляр. Есть ли альтернатива ноутбукам Jupyter, которые я могу использовать для этого? (т. е. настроить интерактивный сеанс в реальном времени для пользователей демо-версии, чтобы они могли выполнять свои тесты Python для пакета, не имея доступа к коду пакета). Будем благодарны за любые предложения о том, как лучше всего это сделать. Большое спасибо.
1 ответ
Если вы правильно упаковываете содержимое (например, с помощью Docker), то вы можете легко создавать среды, в которых ваши пользователи могут бездельничать, и это лишает их возможности доступа к папкам сервера.
Фактически, если вы возитесь с сервером tmpnb и откроете терминал, вы заметите, что пользователи не имеют доступа ни к чему, кроме папки их собственного контейнера. Так что вы можете просто следовать инструкциям tmpnb readme.
Кроме того, вы всегда можете все настроить, а затем попробовать самостоятельно получить доступ к проприетарному коду, чтобы обеспечить себе дополнительное удобство в том, что ваш код действительно безопасен и что пользователи имеют доступ только в очень ограниченной среде.