← Все статьи

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

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

В прошлом посте мы арендовали 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.

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

Made on
Tilda