Краткий ответ: Python 3 поставляется с каждым современным дистрибутивом Linux. Добавьте инструменты командой sudo apt install python3-pip python3-venv (Ubuntu/Debian) или sudo dnf install python3-pip (AlmaLinux/Rocky) и всегда работайте в виртуальном окружении (python3 -m venv), а не устанавливайте пакеты системно.

Обзор

Python питает веб-бэкенды (Django, Flask, FastAPI), автоматизацию и инструменты для данных. Золотое правило на серверах: никогда не делайте pip install в системный Python — дистрибутивы на него полагаются и теперь активно это блокируют («externally managed environment»). Виртуальные окружения держат зависимости каждого проекта изолированными.

Что нужно иметь

Пошаговая инструкция

  1. Установите pip и venv:
    # Ubuntu/Debian
    sudo apt -y install python3-pip python3-venv
    # AlmaLinux/Rocky
    sudo dnf -y install python3-pip
  2. Создайте окружение проекта:
    mkdir -p ~/myproject && cd ~/myproject
    python3 -m venv .venv
    source .venv/bin/activate
  3. Устанавливайте зависимости внутри него:
    pip install --upgrade pip
    pip install -r requirements.txt   # or: pip install flask
  4. Деактивация — deactivate; повторная активация — source .venv/bin/activate.
  5. Для CLI-инструментов (не зависимостей проекта) используйте pipx: sudo apt install pipx && pipx install httpie.

Типичные проблемы

  • error: externally-managed-environment: вы попробовали системный pip — создайте venv вместо этого.
  • Не тот Python в сервисных юнитах: указывайте systemd/cron абсолютный путь venv: /home/user/myproject/.venv/bin/python.
  • Сбои сборки при pip install: установите зависимости сборки: sudo apt install build-essential python3-dev.

Когда обращаться в поддержку

Окружения Python — уровень приложения; обращайтесь через тикет по серверным сбоям или увеличению ресурсов для более тяжёлых нагрузок.

Частые вопросы

Почему pip пишет «externally-managed-environment»?

Современные дистрибутивы блокируют системные pip-установки, чтобы защитить инструменты ОС. Создайте виртуальное окружение командой «python3 -m venv .venv» и устанавливайте пакеты внутри него.

Нужен ли venv для каждого проекта?

Да, это стандартная практика: каждый проект получает собственный venv, поэтому версии зависимостей никогда не конфликтуют между проектами или с системным Python.

Как запускать venv-приложение из systemd или cron?

Укажите в юните или crontab абсолютный путь к интерпретатору venv, например /home/user/myproject/.venv/bin/python — для абсолютных путей шаг активации не нужен.

Похожие статьи

Готовы начать? Заказать VPS в Cloud2Y →

Помог ли вам данный ответ? 0 Пользователи нашли это полезным (0 голосов)