TGViewer
DevOps Portal | Linux DevOps Portal | Linux @loose_code · 13.1K subscribers
Post #414 303
Как не профукать свой проект на Python? 🐍

Конец этой недели выдался интересным в плане рабочих задач. У одного клиента отвалился Airflow - это инструмент, который используется для управления потоками обработки данных. Реализован он на Python с использованием фреймворка Flask.

Почему отвалился? После неудачной попытки обновления этого самого Airflow. Апгрейд самого инструмента прошел успешно, ну а дальше начались проблемы с зависимостями. Оказалось, что проект не был установлен изолировано и обновление одного пакета затронуло много чего на уровне системы. Избежать подобного можно при помощи виртуального окружения или virtual environment. Попробую по простому объяснить что это такое.

Замки из песка и проекты в Python 🏰

У вас есть дистрибутив Linux, в котором много где используется Питон. И вы решили на этом дистрибутиве развернуть питонячий проект. Чтобы состояние проекта не влияло на зависимости Питона на уровне системы или на другие проекты (существующие или которые только появятся) проект нужно разместить в том самом виртуальном окружении - изолированной среде в пределах системы, которая не связана с системными пакетами Python и с пакетами других проектов.

Проекты и разработчиков в такой ситуации можно представить детьми, которые в песочнице строят замки. Одно неловкое движение и твой замок рухнет, но при этом есть риск обрушить еще и замки других детей. Мы ведь этого не хотим, правда? Поэтому свой замок мы обнесем оградой, закрывшись от других замков изолированной средой.

После нас хоть потоп 🌊

Оградившись от других детей и замков мы можем делать со своим творением все, что душа пожелает. Даже если что-то сломается, то это никак не повлияет на других. И наоборот, ошибки других не смогут повлиять на наш замок. Можем сделать несколько таких изолированных песочниц и пробовать в них любые варианты. Что в такой ситуации может произойти страшного? Только что-то глобальное - например, по городу, где расположены наши песочницы прилетит метеорит и разнесет все к черту. Но в таком случае уже будет не до спасения каждого отдельно взятого замка, нужно будет решать проблемы болшего масштаба.

Семь раз отмерь… и сделай виртуальное окружение 🧠

Проблемы с Airflow могло вообще не возникнуть, если бы изначально он крутился в виртуальном окружении. И даже если бы трудности после обновления возникли, то при решении все было бы проще, чем работа с зависимостями и пакетами Питона на уровне системы, когда любые манипуляции с ними грозят тем, что отвалится что-нибудь еще.

Потому, если вы новичок в программировании на Питоне, то виртуальное окружение должно стать вашим лучшим спутником при работе. Изолируйте все по максимуму, чтобы потом не оказаться у разбитого корыта.
  • 👍 2
More from @loose_code
  1. Oct 8, 2026Интересный и полезный опенсорс-инструмент Как часто приходилось открывать консоль AWS и др…
  2. Oct 8, 2026💻Практический вебинар «СТРАТЕГИЯ РЕЗЕРВНОГО КОПИРОВАНИЯ» 📹 15 октября в 11:00 Мск за 90…
  3. Oct 8, 2026В этом туториале показано, как разворачивать и масштабировать большие языковые модели (LLM…
  4. Oct 6, 2026Как работает Kubernetes Cluster Autoscaler? Базовый флоу выглядит так Pending Pod → Cluste…
  5. Oct 1, 2026Обработка миллионов файлов – это та точка, где большинство распределённых систем хранения…
  6. Oct 1, 2026Планы на 3 октября — прийти на RWB Infra x Security Meetup Мы направим прожекторы на инфра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →