Python і оточення virtualenv
Про virtualenv напевно тільки ледачий не писав :) і не вихваляв би, як з ним стає легше розробляти і підтримувати модулі різних версій на python'e. Цей пост не стане винятком, я опишу як ставити цього звірка і далі використовувати в повсякденному кухні.
Потрібен virtualenv для створення віртуальних оточень python, всередині яких може, наприклад, використовуватися інша версія python (не та що встановлена в системі як основна), свій, особливий, набір модулів і додатків (потрібних під конкретну задачу). І потрібно воно для того щоб, наприклад, протестувати нову версію модуля, що не засмічуючи і не конфліктуючи з основним набір модулів або створити проект який буде використовувати строго обраний набір модулів і в майбутньому не планується його оновлення, в той час як модулі, встановлені в системі , як основні, можуть вільно оновлюється.
Для початку ставимо pip
Створюємо нове оточення:
Якщо в операційній системі варто кілька версій пітонів, то virtualenv можна вказати скільки разів використовувати:
Тепер ми можемо наповнювати нове оточення необхідними модулями:
Варіант 2: спочатку активуємо наше оточення
На початок рядка запрошення в терміналі повинно буде додасться назва нашого оточення (test) це означає, що оточення активізувалося. Тепер для всього буде використовуватися версія python з цього оточення і видно тільки модулі встановлені в це оточення.
Ставимо потрібні модулі:
Що-б вийти з активованого оточення просто набираємо
Для ще більшого комфорту при роботі з virtualenv Doug Hellmann написав розширення virtualenvwrapper. яке робить всі маніпуляції з оточенням ще простіше.
Створюємо папку, де будуть лежати все оточення
Додаємо в файл
Створюємо нове оточення:
Для роботи wsgi зі створеним оточенням додаємо папку site-packages з цього оточення в видимий шлях:
Що б додати в cron задачу написану з використанням модулів зі створеного оточення треба просто викликати використовуваний python з цього оточення: