РАЗМЕЩАЕМ БОТА НА СЕРВЕРЕ | Телеграм боты ч. 5

Sdílet
Vložit
  • čas přidán 25. 07. 2024
  • В очередной части курса мы разместим бота на сервере. Я покажу полный процесс от создания requirements.txt файла до запуска бота. В видео работаем с менеджером процессов pm2.
    ===================================================
    ℹ️ Наш TELEGRAM канал t.me/ideaschoo1
    ℹ️ GitHub github.com/bugsandfeatures
    ===================================================
    ⏱ Главы ⏱
    00:00 - Начало
    00:30 - Демонстрация бота
    00:42 - Создание requirements.txt
    01:27 - Аренда сервера Timeweb
    02:25 - Демонстрация панели усправления
    03:13 - Настройка SSH подключения
    05:15 - Настройка Linux
    06:03 - Устанавливаем все утилиты
    07:01 - Переносим проект на сервер
    08:37 - Устанавливаем модули Python
    09:00 - Зпускаем бота и особенности использования pm2
    11:36 - Завершение
    ===================================================
    💻 Быстрый хостинг для растущих проектов:
    timeweb.cloud/?i=105035
    Реклама
    erid:2VtzqxTAHDw

Komentáře • 118

  • @helgaz9932
    @helgaz9932 Před rokem +3

    Спасибо!! Недавно наткнулась на ваш канал, полезно. Как же круто, что нет воды, чёткая понятная речь и передана суть)) Вы офигенны

  • @deusized
    @deusized Před 6 měsíci +1

    мужик, твой гайд просто лучший из лучших, спасибо огромнейшее

  • @jomalaki1201
    @jomalaki1201 Před 2 dny +1

    Отличное видео! Спасибо большое!

  • @nonameprvt
    @nonameprvt Před 7 měsíci +1

    Огромное спасибо! Отличное и очень подробное объяснение!

  • @user-mt8sc5yh5q
    @user-mt8sc5yh5q Před 10 měsíci +1

    Автор у Вас отлично получается доносить информацию до слушателей. И голос поставлен хорошо. Жалко что редкие выпуски видео

  • @stankors9708
    @stankors9708 Před 10 měsíci +1

    автор, ты лучший! столько облазил интернета, во всех видео проскакивают куски и ни фига не понятно, в твоем видео все доступным языком , хоть это первая моя работа с сервером.

  • @Cosmofen2013
    @Cosmofen2013 Před rokem +1

    Спасибо за это видео! Написал свой нубовский скрипт, а в плане диплоя ни в зуб ногой, как говорится😆 сделал все как в видео, но без менеджера процессов, через nohup. Потом замучился потоки останавливать. Установил pm2 и стало всё хорошо)

  • @danko-jy6ih
    @danko-jy6ih Před rokem +1

    Спасибо, всё получилось!)

  • @pirate1736
    @pirate1736 Před 5 měsíci +1

    Спасибо! То что нужно было

  • @alextrufan2551
    @alextrufan2551 Před rokem +1

    Спасибо, ты многим помог)))

  • @zorkango
    @zorkango Před 9 měsíci +1

    Вообще лучший, респект

  • @Fleshgod
    @Fleshgod Před rokem +5

    Невероятно рад твоему возвращению!
    Очень ждем твое видео с разработкой бота, а именно части где в БД загружается дата об клиенте после оплаты (ФИО, телефон , адрес доставки).

  • @aksh2161
    @aksh2161 Před 6 měsíci +4

    Автор, тебе надо пожать руку. Такой хостинг искал, который более-менее адекватный по деньгам. Брал хостинг на Селектел, вот там кошель плачет. А когда бд туда приручиваешь, адский рёв - спасибо)

  • @user-cw6yg2cn7i
    @user-cw6yg2cn7i Před 6 měsíci +1

    Все работает, имба видео!

  • @vitalik3447
    @vitalik3447 Před rokem +1

    Огромное спасибище! Разместил и запустил бота прям по инструкции!

    • @vitalik3447
      @vitalik3447 Před 2 měsíci

      @user-wy2kv9vc2p Да, боты все время работают. Но бывает перезапуск из-за проблем на самом хостинге.

  • @user-yj9cg7ii4g
    @user-yj9cg7ii4g Před 10 měsíci +1

    Спасибо огромное !

  • @user-hv7wi7gr8c
    @user-hv7wi7gr8c Před 3 měsíci +1

    Спасибо брат очень помог!

  • @Myth_popylar
    @Myth_popylar Před měsícem +1

    ты лучший!!!!!

  • @user-it3yo1sn6i
    @user-it3yo1sn6i Před rokem +1

    Хороший гайд. Спасибо. Было бы интересно посмотреть работу связки PostgreSQL & asyncpg в боте

  • @Mr-eh3ne
    @Mr-eh3ne Před 2 měsíci

    Впервые вижу такой канал. Автор готов помочь в комментариях к видео годовалой давности!
    Жду номер карты)
    Все получилось, супер, спасибо!
    PS.
    Мало того что показал как это делает, так еще и внес понимания во все действия. Просто огромное спасибо!

  • @dautmantis
    @dautmantis Před 9 měsíci +1

    Спасибо надо попробать

  • @user-cn3lb3qj2g
    @user-cn3lb3qj2g Před rokem

    Подскажите, если у меня уже один бот залит на сервер, и я хочу другого добавить, как мне сделать? Надо новый сервер покупать или можно на этот же + в консоле указать новый путь к файлу запуска? во втором случае первый файл не прекратит работу?

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      Все можно на одном держать, просто у каждого проекта своя директория, все будет хорошо работать

  • @user-cn3lb3qj2g
    @user-cn3lb3qj2g Před 9 měsíci

    не подскажешь с чем может быть связан сброс значений uptime в консоле. у меня процессы почему-то заново начинаются спустя промежуток времени. Если бы сбои в хостинге - это норм, а то у меня процессы обновляются очень уж часто

    • @bugsandfeatures
      @bugsandfeatures  Před 9 měsíci

      речь о процессах в pm2? никогда с таким не сталкивался

  • @user-hb4ph3hn5r
    @user-hb4ph3hn5r Před 10 měsíci +3

    БРАТ ПОЖАЛУЙСТА ДОДЕЛАЙ КУРС

  • @exquisitecorpse666
    @exquisitecorpse666 Před rokem +1

    все оч круто, спасибо тебе
    столкнулся с множеством проблем, а оказалось версия убунту не соответствовала для работы с нужными зависимостями
    бот запустился, однако если добавить токен в переменную окружения, то перестаёт работать(

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      Не должно быть так… что-то не так сделал, или версия какого-та модуля не та

    • @exquisitecorpse666
      @exquisitecorpse666 Před rokem +1

      @@bugsandfeatures буду ковыряться дальше

  • @user1166j
    @user1166j Před 10 měsíci +2

    ура, с вашей помощью я наконец запустил бота!
    вот только вопрос, если делать другого бота, на этом жн сервере можно разместить?
    а если необходимо удалить старого бота с сервера как это сделать?

    • @bugsandfeatures
      @bugsandfeatures  Před 10 měsíci

      На сервере держать можно сколько угодно ботов, главное следить чтоб сервер не перегружался, запускать их так же как и первого
      Чтобы удалить
      pm2 delete имя_процесса

    • @kryptodog1066
      @kryptodog1066 Před 5 měsíci

      ​@@bugsandfeaturesа можно ли держать тг бота, сайт на реакте и бэкенд к нему на flask?

  • @user-ic2tx9sb1m
    @user-ic2tx9sb1m Před 3 měsíci

    Спасибо огромное! А как удалять с сервера ненужные директории? просто кликая правой кнопкой?

    • @bugsandfeatures
      @bugsandfeatures  Před 3 měsíci

      Да, либо в консоли с помощью команды rmdir

  • @Medellin4497
    @Medellin4497 Před měsícem +1

    Спасибо большое! У меня вопрос возник, если я в .env храню апи ключи и данные что делать с ними? Их же нельзя грузить на сервер.

    • @bugsandfeatures
      @bugsandfeatures  Před měsícem

      Почему .env нельзя грузить на сервер? В них и надо хранить все скрытые данные

  • @meditation2735
    @meditation2735 Před rokem

    Сделал все как на видео ошибок не было но бот не работает, что нужно написать в коде чтобы он работал с хостом вроде что-то вконце пишут перед if __name__ == '__main__': ??

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      Если не работает, значит сделал не совсем как в видео, ничего дописывать не надо.

  • @TimQ2
    @TimQ2 Před 11 měsíci

    А если я допустим хочу обновить бота, добавить дополнительные функции, как это сделать??

    • @bugsandfeatures
      @bugsandfeatures  Před 11 měsíci +1

      Заменить файлы на сервере на новые, прописать
      pm2 restart “название_процесса”

  • @4TheGames
    @4TheGames Před měsícem

    Если у меня тг бот в активную пользуется бд, как я понимаю мне нужно и для баз данных отдельно докупать сервер?

    • @bugsandfeatures
      @bugsandfeatures  Před měsícem

      Да, это в целом правильная практика

  • @NickolasOganesyan
    @NickolasOganesyan Před 5 měsíci

    Спасибо за ролик, все круто и понятно! Бот запустился и заработал, но спустя какое-то время начал выдавать такую ошибку: "Произошла ошибка: JSON Query to graphql/query: HTTP error code 401." Подскажите пожалуйста, в чем может быть проблема? Пробывал перезапускать, но все так же! Тот же код спокойно запускается через терминал PyCharm.

    • @bugsandfeatures
      @bugsandfeatures  Před 5 měsíci

      Цифра 4 в ошибке говорит о твоей ошибки при обращении к серверу, тут нужно глубже разбираться, попробуй ошибку загуглить или кинуть gpt, либо можешь мне лично написать в тг)

  • @pirate1736
    @pirate1736 Před 5 měsíci

    Можно сделать автоматический рестарт в случае ошибки?

    • @bugsandfeatures
      @bugsandfeatures  Před 5 měsíci

      Бот не отключается после ошибки, только если ошибка критическая, так что в таком рестарте смысла нет

  • @bobross2263
    @bobross2263 Před měsícem

    подскажите пожалуйста, если у меня бот использует postgres базу данных на моем компе, мне надо ее тоже на сервак загружать, и как это сделать?

    • @bugsandfeatures
      @bugsandfeatures  Před měsícem

      В интернете есть инструкции, но вообще скоро видео будет об этом

  • @vlad-pg2lt
    @vlad-pg2lt Před rokem

    После перезапуска сервера будет процесс запускаться снова ?

    • @bugsandfeatures
      @bugsandfeatures  Před rokem +1

      по умолчанию нет, но это можно настроить, нужно просто добавить определенный скрипт в список скриптов, запускающихся по умолчанию, на хабре можно найти поробную интсрукцию

  • @dangerbublik
    @dangerbublik Před 7 měsíci +1

    бота поставил, только по ssh не смог подключится, но это ничего
    спасибо за ролик

    • @bugsandfeatures
      @bugsandfeatures  Před 7 měsíci

      Почему не получилось подключится?

  • @user-wd6nc8pw8n
    @user-wd6nc8pw8n Před 27 dny +1

    Привет. А можно ли на одном хостинге запустить, ну например 2 бота и более

    • @bugsandfeatures
      @bugsandfeatures  Před 27 dny

      Хоть сколько, главное смотреть чтоб ресурсов сервера хватало

    • @user-wd6nc8pw8n
      @user-wd6nc8pw8n Před 23 dny

      @@bugsandfeatures а тогда какой командой в одном терминале можно запустить одновременно два Python файла

    • @bugsandfeatures
      @bugsandfeatures  Před 23 dny

      @@user-wd6nc8pw8n аналогичной
      pm2 start путь_до_файла/имя_файла --interpreter=python3
      желательно чтобы имена файлов отличались, чтобы ими можно было удобно управлять

  • @user-qn3iw1oe6l
    @user-qn3iw1oe6l Před rokem

    Правильно ли я понимаю, что тут просто через пулл работает бот? Будет ли видос с хуками?

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      Будет, просто мало времени на ведение канала, но все, что существует по ботам будет на этом канале

    • @kino_chill
      @kino_chill Před rokem

      @@bugsandfeatures Да. Очень бы хотелось увидеть. А так же видео про БД на сервере. Спасибо за Ваш труд!

  • @marcpeterson3137
    @marcpeterson3137 Před rokem

    Если я хочу запускать несколько ботов, то я могу просто кинуть файл одного и второго бота, чтобы после запустить их двумя командами как два процесса?

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      Конечно) процессов может быть сколько угодно, главное следить чтоб оперативной памяти хватало

    • @marcpeterson3137
      @marcpeterson3137 Před rokem

      @@bugsandfeatures Может странный вопрос, но для каждого бота отдельная папка должна быть?

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      @@marcpeterson3137 технически необязательно, но так легче ориентироваться по файлам (своего рода негласное правило), но если пишете для себя, то можете делать как угодно

    • @marcpeterson3137
      @marcpeterson3137 Před rokem

      @@bugsandfeatures Прям щас делаю, почему-то у меня появилось при каждом перезапуске появилось три main процесса и нужный мне остался один, щас перезагружаю сервер, но опять же крипово немного, абсолютно не знаю где и как, те же ssh ключи, я без них подключался, а щас он их просит, но будем разбираться

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      @@marcpeterson3137 что-то где-то лишнее делаешь, ибо действительно что-то криповое

  • @Puchmeow
    @Puchmeow Před rokem

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

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      У встроенных интерпретаторов стоит ограничение на память, так что не получится без хостинга
      Бот проработает пару часов и отключится

    • @Puchmeow
      @Puchmeow Před rokem

      @@bugsandfeatures pyinstaller решит обозначенную тобою проблему запуска бота на компьютере или я все таки не вижу картину целиком и в целом невозможно запустить телеграмм бота на компьютере чтобы он был доступен всем?

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      @@Puchmeow он будет доступен всем и вы правы, pyonstaller действительно может решить эту проблему, можете начать с этого)
      Если у вас интернет хороший, то проблем не будет
      Но по моим скромным расчетам дешевле купить сервер за 180 рублей, чем держать компьютер включенным целый месяц, если проблема в деньгах)

    • @Puchmeow
      @Puchmeow Před rokem

      @@bugsandfeatures не то чтобы в деньгах. просто не вижу смысла в том, чтобы покупать сервер на время тестирования бота. Будет ли он кому то интересен его работоспособность и прочее

    • @Puchmeow
      @Puchmeow Před rokem

      так же и исправлять ошибки меньше манипуляций

  • @chinazes1488ivan
    @chinazes1488ivan Před 4 měsíci

    делал все по гайду, запустил, статус онлайн, но бот не функционирует что делать

    • @bugsandfeatures
      @bugsandfeatures  Před 4 měsíci

      Перепроверить еще раз, либо смотреть логи через
      pm2 logs
      Там будет написано
      Если не написано, то лучше создать свои лог файлы

  • @univprod_empire
    @univprod_empire Před 5 měsíci

    А писать код можно сразу на сайте или повторно скачивать?

    • @bugsandfeatures
      @bugsandfeatures  Před 5 měsíci

      Можно через вим или нано) но так естественно никто не делает, но скачивать ничего не надо, пишите на компе, потом закидываете обновление на сервер и перезапускаете проект

    • @univprod_empire
      @univprod_empire Před 5 měsíci

      @@bugsandfeatures Понял, спасибо. Осталось найти денег для сервера😂

  • @user-kb4uq7oy6k
    @user-kb4uq7oy6k Před 6 měsíci

    установил все, запускаю, пишет работает, проверяю через pm2 status сразу пишет erroed

    • @bugsandfeatures
      @bugsandfeatures  Před 6 měsíci

      Значит ошибка в коде, создайте логи и увидите что не работает

  • @user-vg6yb3pg1v
    @user-vg6yb3pg1v Před 7 měsíci

    А как с вебхуком, сертификатом?

  • @m9dnight_cars
    @m9dnight_cars Před 15 hodinami

    везде выдает такую ошибку: unable to fetch some archives, maybe run apt-get update or try with --fix-missing. все делал точно по гайду
    P.s. у кого тоже такая ошибка, привяжите публичный IP к вашему серверу, все заработает. Мне помогло

  • @Kensary666
    @Kensary666 Před 3 měsíci

    Что делать если у меня бот написан на c# ? Вообще нигде гайдов нету

  • @fushibuzuka7463
    @fushibuzuka7463 Před rokem

    а почему без виртуального окружения .)),?

  • @freezikft
    @freezikft Před 8 dny

    А нужен публичный айпи для хостинга бота?

    • @bugsandfeatures
      @bugsandfeatures  Před 4 dny +1

      обязательно, иначе у сервера не будет доступа в интернет

  • @user-qz9ir2lt1x
    @user-qz9ir2lt1x Před rokem

    Ничего не работает:( в статусе выдаёт ошибку

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      Где-то допускаешь ошибку в процессе

  • @МУСОР_ТВ
    @МУСОР_ТВ Před rokem +2

    7:26 ошибка в статусе:
    Сбой аутентификации.
    Критическая ошибка: Невозможно подключиться к серверу
    Изменино:
    Уже исправил, у кого такая фигня, в ответах написал ищ-за чего может быть

    • @trufakin
      @trufakin Před rokem

      получилось исправить?

    • @МУСОР_ТВ
      @МУСОР_ТВ Před rokem

      ​@@trufakin Уже давно исправил. Люди у которых тоже самое, вы когда в FillaZilla пароль от сервера вводите, пишите пароль от рут, который на почту пришел, когда в самой консоли на сайте ввели логин рут пользователя.

    • @trufakin
      @trufakin Před rokem

      @@МУСОР_ТВ спасибо больше, получилось))

    • @respecktpro2954
      @respecktpro2954 Před 11 měsíci

      Как исправить?

    • @МУСОР_ТВ
      @МУСОР_ТВ Před 11 měsíci

      @@respecktpro2954 мой коммент смотрите выше, мне это помогло

  • @thisergey
    @thisergey Před rokem

    Запустил бота, но что-то он совсем печально работает на таком же сервере как в видео. На локалке всё норм.

    • @thisergey
      @thisergey Před rokem

      безумные задержки

    • @bugsandfeatures
      @bugsandfeatures  Před rokem

      @@thisergey обратитесь в службу поддержки, вам скажут в чем причина, ибо у меня все боты работают прекрасно

    • @thisergey
      @thisergey Před rokem

      @@bugsandfeatures возможно дело в моих кривых руках, что-то возможно не так сделал. Хотя на сервисе типа хероку работал без проблем

    • @Martoy
      @Martoy Před rokem

      @@thisergey такая же тема, даже сменил конфигурацию на 1 больше, но не помогло, хз я правда поставил Ubuntu 22, возможно дело в ней, попробую сегодня Ubuntu 20

    • @thisergey
      @thisergey Před rokem

      @@Martoy я разобрался в чём проблема, нужно ставить виртаульное окружение чтобы aiogram нормально работал, и в нём запускать скрипт

  • @Putu_pererenan
    @Putu_pererenan Před měsícem

    5:52 вроде бы нельзя системный питон трогать вообще

    • @bugsandfeatures
      @bugsandfeatures  Před měsícem

      Да можно, если знать что делать

  • @Mr-eh3ne
    @Mr-eh3ne Před 2 měsíci

    Заливаю на другой хост. При команде npm install pm2 -g выходит ошибка. Что делать?

    • @bugsandfeatures
      @bugsandfeatures  Před 2 měsíci

      А какая ошибка?

    • @Mr-eh3ne
      @Mr-eh3ne Před 2 měsíci

      ​@@bugsandfeaturesа, я думаю проблема в самом хостинге, пишет что возможно недостаточно прав.

    • @bugsandfeatures
      @bugsandfeatures  Před 2 měsíci

      @@Mr-eh3ne а sudo перед командой пишите?