Хостинг для бота на Python: установка на VPS, коротко и с данными
Конспект страницы: 6 разделов коротко, данные на 14 октября 2026 и ответы на 3 вопроса. Полный разбор с примерами: Хостинг для бота на Python: установка на VPS.
Коротко
Хостинг для бота на Python это обычный VPS с Ubuntu, где бот живёт в виртуальном окружении и запускается службой systemd или контейнером Docker. Свежие aiogram 3.31 и python-telegram-bot 22.8 требуют Python 3.10 и новее, поэтому системного Python в Ubuntu 22.04 и 24.04 хватает без сборки своего. Для бота на Python хватит младшего VPS, venv и службы systemd.
Конспект по разделам
Что нужно боту на Python на сервере
Почему боту нужен постоянно работающий сервер, а не хостинг сайтов, разобрано в обзоре аренда сервера для бота. Здесь про то, как устроить сам бот на Python, чтобы он пережил обновления и перезагрузки. Лицензии библиотек свободные: aiogram под MIT, python-telegram-bot под LGPLv3.
Установка бота на Python в виртуальное окружение
Последняя команда проверочная: убедитесь, что бот отвечает, остановите его сочетанием Ctrl+C и переходите к службе.
- Создайте пользователя под бота: процесс без прав root не сможет испортить систему при ошибке в коде.
- Склонируйте код из git-репозитория.
- Создайте окружение и поставьте зависимости.
- Положите токен в.env и закройте файл от чужих глаз.
Служба systemd для бота на aiogram или python-telegram-bot
Ключевые строки для Python: путь к интерпретатору внутри.venv, файл с переменными и отключённая буферизация вывода. Без PYTHONUNBUFFERED=1 Python копит print и логи в буфере, когда вывод идёт не в терминал. Включение: sudo systemctl enable --now shop-bot, журнал в реальном времени: journalctl -u shop-bot -f.
Бот на Python в Docker: Dockerfile и compose
Docker удобен, когда ботов несколько или им нужны разные версии Python. Образ python-slim весит меньше полного, а зависимости ставятся отдельным слоем и не пересобираются при каждой правке кода. Том data нужен, если бот хранит SQLite или файлы пользователей: без него всё пропадёт при пересоздании контейнера.
Как обновлять бота на Python и какой сервер взять
Обновление бота сводится к трём командам: git pull, установка зависимостей и перезапуск службы или docker compose up -d --build. Перед обновлением мажорной версии библиотеки читайте её список изменений: переход на новую крупную версию aiogram или python-telegram-bot может потребовать правок в коде. Ответьте про библиотеки, базу и способ запуска
Запустите свой сервер за пару минут
Почасовая оплата: тестовый стенд на сутки стоит десятки рублей, а не месячный тариф.
- NVMe-диски и гарантированная доля процессора
- Root-доступ и любой софт, от Docker до игровых серверов
- Маркетплейс: 91 приложение в один клик
- Бесплатный перенос проекта силами специалистов
Данные
| Часть | Зачем |
|---|---|
| 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 | Автозапуск и перезапуск после падения |
Данные на 14 октября 2026.
Вопросы и ответы
Какая версия 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 или рядом работает база.