Я планирую создать приложение Python (Пиблоссом) на моем сервере и планирую запустить его самостоятельно песочница virtualenv с участием --no-site-packages
. Я надеюсь, что такую установку можно будет легко переносить и обслуживать в течение многих лет.
Однако я использовал virtualenv только для сред разработки, которые воссоздают определенную настройку сервера локально, и в большинстве источников о virtualenv, похоже, также упоминается virtualenv для такого использования.
Есть ли недостатки в запуске приложения Python из виртуального сервера на живом сервере?
ПРИМЕЧАНИЕ. Что касается переносимости установки, я только что узнал об экспериментальной --relocatable
параметр, который необходимо запустить после установки нового пакета. Даже если бы я этого не делал, я думаю, установка была бы довольно переносимой благодаря pip.
Да, virtualenv вполне подходит для производства - у нас есть (очень) крупные клиенты, использующие Python, запускающие свои приложения внутри virtualenv, и он очень хорошо работает, чтобы изолировать их от системной конфигурации Python.
Однако я бы не рекомендовал использовать его для «портативности» - пытаясь переносить все это с машины на машину. Слишком много возможностей для незаметных сбоев из-за несовместимости, которую никто другой не заметит (потому что это не то, что широко используется). Вместо этого используйте автоматизацию, которая способна настроить новый virtualenv, соответствующий вашим требованиям, на новом компьютере.