Переносим Telegram-бота на сервер

Делаю Telegram‑ботов и Mini Apps, которые приносят заявки, продажи и порядок в процессах. Пишу пошаговые гайды, делюсь архитектурой, безопасностью и метриками, чтобы ваш бот был не «кнопочкой», а рабочим инструментом. Если нужен бот под задачу — помогу с логикой, оплатами, интеграциями и запуском.

telegramvpsdocker

В прошлом посте мы арендовали VPS и сделали базовую подготовку.

Теперь пора перейти к практике: подключимся к серверу, поставим Docker и загрузим код нашего бота.

Напомню, что мы собираем бота, который будет:

  • ✅ считать новых подписчиков канала
  • ✅ отслеживать отписки
  • ✅ отправлять уведомления админу в личку

То есть всё, что нужно для простой аналитики Telegram-канала.

⁉️ Что сделаем в этом посте
Сегодня без лишней теории. Просто подготовим сервер под запуск бота:

  1. подключимся к VPS по SSH
  2. установим Docker
  3. скачаем код проекта с GitLab
  4. проверим, что всё лежит на сервере

После этого останется только настроить переменные и запустить бота.

1️⃣ Подключаемся к серверу

После аренды VPS у вас должен быть IP-адрес сервера.
Подключаемся к нему через SSH под root:

ssh root@IP_СЕРВЕРА

Вместо IP_СЕРВЕРА подставьте IP вашего VPS.
Если всё ок - вы попадёте внутрь сервера и увидите консоль.

2️⃣ Ставим Docker

Чтобы не мучиться с ручной установкой зависимостей, будем запускать бота через Docker.
Сначала обновим список пакетов и поставим нужные утилиты:

apt update && apt install -y ca-certificates curl git

Теперь установим Docker одной командой:

curl -fsSL https://get.docker.com | sh

Проверяем, что Docker установился:

docker --version
docker compose version

Если в ответ появились версии Docker и Docker Compose - всё отлично, можно двигаться дальше.

3️⃣ Загружаем код бота с GitLab

Теперь скачиваем проект на сервер.
Обычно такие проекты удобно хранить в папке /opt, туда и перейдём:

cd /opt

Клонируем репозиторий:

git clone https://gitlab.com/svyatoslav.telegram.dev/free-channel-analytics-bot.git

Переходим в папку проекта:

cd free-channel-analytics-bot

И проверяем, что файлы действительно на месте:

ls -la

Если видите файлы проекта - значит код успешно загружен на сервер.

❓ Что в итоге

На этом этапе мы уже сделали важную часть:

  • ✅ подключились к VPS
  • ✅ установили Docker
  • ✅ скачали код бота
  • ✅ проверили, что проект лежит на сервере

То есть сервер уже почти готов к запуску.

Осталось самое интересное - настроить .env, добавить токен бота, ID админа, ID канала и запустить всё через Docker.

Этим займёмся в следующем посте 🚀

Баннер: автор на фоне интерфейсов и графиков, иконки Docker, GitLab и Telegram — иллюстрация поста о переносе бота на VPS и установке Docker
Обложка: баннер с автором и иконками Docker, GitLab и Telegram — иллюстрация переноса бота на VPS

Дискуссия

Святослав | Разработка Telegram-ботов
Ekaterina
Сложновато для понимания когда все сразу☺️
Понимаю, терминов и правда много. А какую конкретно задачу хотите решить — сбор заявок или автоматизацию общения с клиентами?
Ekaterina
Святослав | Разработка Telegram-ботов
Понимаю, терминов и правда много. А какую конкретно задачу хотите решить — сбор заявок или автоматизацию общения с клиентами?
Больше второе)
Kira
Понятно, что ничего не понял. Не моя сфера)))
Святослав | Разработка Telegram-ботов
Kira
Понятно, что ничего не понял. Не моя сфера)))
Бывает, автоматизация действительно звучит сложно, пока не увидишь конкретный пример под свою задачу. Какой у вас бизнес или проект? Может, как раз найдём простую точку входа.
Святослав | Разработка Telegram-ботов
Давайте лучше обсудим, как автоматизировать ваш бизнес с помощью ботов?
𝑺𝒊𝒓𝒂
Интересно
Алёна Александровна Локтионова
Какой подробный разбор ) спасибо больше буду пробовать
Святослав | Разработка Telegram-ботов
Алёна Александровна Локтионова
Какой подробный разбор ) спасибо больше буду пробовать
Рад, что вам понравилось! Если в процессе возникнут вопросы по логике или нужна будет консультация под ваш проект — просто напишите, сориентируем. Какую нишу планируете автоматизировать?
𝓉𝒶.𝓈𝒶𝓂𝒶𝒾𝒶.𝓂𝒶𝓇𝒾
💅
Присоединиться к обсуждению →

Читайте так же