Распространение автономного веб-приложения Python среди нетехнических пользователей - PullRequest
5 голосов
/ 17 октября 2008

Я пишу веб-приложение на Python, предназначенное для использования учителями и учениками в классе. Он будет запускаться с размещенного на сайте веб-сайта, но я также хочу, чтобы люди могли загружать автономное приложение, которое они могут установить локально, если им нужна более высокая производительность или у них просто не будет доступного подключения к Интернету в классе.

Пользователи не смогут управлять такими инструкциями, как «сначала установите Python, затем установите зависимости, загрузите архив .tar.gz и введите эти команды в командную строку ...». Мне нужно иметь возможность создать установщик типа «все в одном», который потенциально может установить Python, зависимости (Python-LDAP), некоторый код Python и зарегистрировать веб-сервер на основе Python в качестве службы Windows.

Я просматривал предыдущие вопросы, но ни один из них не показался мне актуальным. Я не беспокоюсь о безопасности исходного кода (мое приложение будет с открытым исходным кодом, я буду продавать контент, чтобы идти с ним), мне просто нужны нетехнические пользователи Windows, чтобы иметь возможность загружать и использовать мое приложение без суеты .

В настоящее время я думаю об использовании NSIS для создания установщика, который включает Python и Python-LDAP в качестве MSI, затем регистрирует мой собственный простой веб-сервер на основе Python в качестве службы Windows и добавляет ярлык в меню «Пуск» / на рабочем столе со ссылкой на http://localhost. Возможно ли это с NSIS - может ли NSIS проверять, например, установленные на данный момент копии Python? Есть ли лучший способ сделать это - есть удобный фреймворк, который позволяет мне поместить мой код в папку и связать его для создания установщика?

Ответы [ 2 ]

4 голосов
/ 17 октября 2008

Использование NSIS прекрасно (я тоже его использую), но я бы предложил использовать «упаковщик», такой как pyinstaller (мой личный фаворит, альтернативы bb_freeze, py2exe), чтобы создать исполняемый файл перед использованием NSIS

Основная выгода, которую вы получаете, делая это; Ваша загрузка меньше, так как вы не объединяете весь Python Standard Lib и дополнительные вещи, которые не нужны вашему приложению, и вы получаете исполняемый файл для загрузки!

0 голосов
/ 21 января 2009

Вы можете попробовать Bitnami Stack для Django , который включает в себя Apache, MySQL, Python и т. Д. В универсальном установщике. Это бесплатно / с открытым исходным кодом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...