Главная/Боты/Бот на Python

Хостинг для бота на Python: установка на VPS

Хостинг для бота на Python это обычный VPS с Ubuntu, где бот живёт в виртуальном окружении и запускается службой systemd или контейнером Docker. Свежие aiogram 3.31 и python-telegram-bot 22.8 требуют Python 3.10 и новее, поэтому системного Python в Ubuntu 22.04 и 24.04 хватает без сборки своего.

4 мин чтенияДанные проверены 16 октября 2026

Ответ за 30 секунд

Для бота на Python хватит младшего VPS, venv и службы systemd. Фиксируйте версии в requirements.txt, токен держите в .env и включите PYTHONUNBUFFERED=1, иначе логи бота появятся в журнале с опозданием или пропадут при падении.

Ubuntu с Python 3 из коробки, root-доступ и почасовая оплата.

Как обновлять бота на Python и какой сервер взять

01 · 1 мин

Что нужно боту на Python на сервере#

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

ЧастьЗачем
Python 3.10 и новееaiogram 3.31.0 поддерживает Python 3.10-3.14, python-telegram-bot 22.8 требует 3.10 и выше
Виртуальное окружениеСвои версии библиотек для каждого бота, системный Python не трогаем
requirements.txt с версиямиСервер ставит ровно то, что работало у вас
Файл .envТокен и пароли вне кода и репозитория
systemd или DockerАвтозапуск и перезапуск после падения

Лицензии библиотек свободные: aiogram под MIT, python-telegram-bot под LGPLv3. Если на сервере кроме бота будет сайт на Django или FastAPI, смотрите общий разбор хостинг для Python.

02 · 1 мин

Установка бота на Python в виртуальное окружение#

  1. Создайте пользователя под бота: процесс без прав root не сможет испортить систему при ошибке в коде.
  2. Склонируйте код из git-репозитория.
  3. Создайте окружение и поставьте зависимости.
  4. Положите токен в .env и закройте файл от чужих глаз.
sudo apt install python3-venv git
sudo adduser --disabled-password bot
sudo -iu bot
git clone https://github.com/you/shop-bot.git app && cd app
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
echo "BOT_TOKEN=123456:ABC..." > .env && chmod 600 .env
.venv/bin/python -m bot

Последняя команда проверочная: убедитесь, что бот отвечает, остановите его сочетанием Ctrl+C и переходите к службе.

03 · 1 мин

Служба systemd для бота на aiogram или python-telegram-bot#

Ключевые строки для Python: путь к интерпретатору внутри .venv, файл с переменными и отключённая буферизация вывода. Без PYTHONUNBUFFERED=1 Python копит print и логи в буфере, когда вывод идёт не в терминал.

# /etc/systemd/system/shop-bot.service
[Unit]
Description=Shop bot (aiogram)
After=network-online.target
Wants=network-online.target

[Service]
User=bot
WorkingDirectory=/home/bot/app
EnvironmentFile=/home/bot/app/.env
Environment=PYTHONUNBUFFERED=1
ExecStart=/home/bot/app/.venv/bin/python -m bot
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Включение: sudo systemctl enable --now shop-bot, журнал в реальном времени: journalctl -u shop-bot -f. Подробнее о политиках перезапуска и защите от бесконечных рестартов: как запустить бота 24/7.

04 · 1 мин

Бот на Python в Docker: Dockerfile и compose#

Docker удобен, когда ботов несколько или им нужны разные версии Python. Образ python-slim весит меньше полного, а зависимости ставятся отдельным слоем и не пересобираются при каждой правке кода.

FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
ENV PYTHONUNBUFFERED=1
CMD ["python", "-m", "bot"]
services:
  shop-bot:
    build: .
    env_file: .env
    restart: unless-stopped
    volumes:
      - ./data:/app/data

Том data нужен, если бот хранит SQLite или файлы пользователей: без него всё пропадёт при пересоздании контейнера. Для PostgreSQL рядом добавьте отдельный сервис, настройка описана на странице PostgreSQL.

Инструмент · 1 мин

Как обновлять бота на Python и какой сервер взять#

Обновление бота сводится к трём командам: git pull, установка зависимостей и перезапуск службы или docker compose up -d --build. Перед обновлением мажорной версии библиотеки читайте её список изменений: переход на новую крупную версию aiogram или python-telegram-bot может потребовать правок в коде.

Сервер для бота на Python

Ответьте про библиотеки, базу и способ запуска

Что бот импортирует
База данных
Как запускаете

06 · 1 мин

Вопросы о хостинге бота на Python#

Какая версия Python нужна для бота на aiogram 3?

aiogram 3.31.0 работает на Python от 3.10 до 3.14. В Ubuntu 22.04 системный Python 3.10, в 24.04 Python 3.12, оба подходят.

Почему логи бота на Python не появляются в journalctl?

Python буферизует вывод, когда он идёт не в терминал. Добавьте в службу Environment=PYTHONUNBUFFERED=1 или запускайте интерпретатор с флагом -u.

Нужен ли Docker для бота на Python?

Нет. Одному боту хватает виртуального окружения и службы systemd. Docker упрощает жизнь, когда ботов несколько, им нужны разные версии Python или рядом работает база.

Почему этому можно верить

Как мы проверяли

Требования из документацииРесурсы, порты и команды сверены с официальной документацией, дата проверки указана.
Всё можно повторитьКоманды и расчёты описаны так, что их повторит любой читатель.
Независимый справочникНе связан с разработчиками приложений и провайдерами и пишет о минусах тоже.

Источники цифр на этой странице: VPS и VDS серверы Таймвеб Клауд, timeweb.cloud/services/vds-vps, проверено 14 октября 2026; Маркетплейс приложений Таймвеб Клауд, timeweb.cloud/marketplace, проверено 14 октября 2026; PyPI: aiogram, версия и поддерживаемый Python, pypi.org/project/aiogram, проверено 14 октября 2026; PyPI: python-telegram-bot, версия и поддерживаемый Python, pypi.org/project/python-telegram-bot, проверено 14 октября 2026.

SBРедакция SelfBase · обновлено 16 октября 2026

Запустите свой сервер за пару минут

Почасовая оплата: тестовый стенд на сутки стоит десятки рублей, а не месячный тариф.

  • NVMe-диски и гарантированная доля процессора
  • Root-доступ и любой софт, от Docker до игровых серверов
  • Маркетплейс: 91 приложение в один клик
  • Бесплатный перенос проекта силами специалистов
Обновление и сервер