Загрузка...

How to put python script/bot on VDS/VPS server

Thread in Python created by Djimbo Dec 11, 2020. (bumped Sep 22, 2024) 45,578 views

  1. Djimbo
    Djimbo Topic starter Dec 11, 2020 FREE TELEGRAM SHOP BOT | lolz.live/threads/1888814 13,552 Jun 23, 2017
    Многие имея на руках всяких ботов, не знают как их поставить на VDS/VPS сервер, чтобы они работали 24/7.

    Для примера будем использовать хостинг AEZA
    (реферальная ссылка со скидкой | оригинальная ссылка без скидки)
    Вы можете использовать любой другой хостинг. Суть у всех одна.
    1. Регистрируем аккаунт и арендуем VDS/VPS сервер.
    -Переходим в раздел Виртуальные серверы и жмём Заказать
    -Выбираем любой понравившийся сервер. Можно и самый дешёвый
    -Указываем любое доменное имя
    -В пункте ОС выбираем Ubuntu 22.04
    -После ввода всех данные отправляем сервер В корзину
    -Оплачиваем и ждём установки сервера

    2. После оформления и оплаты заказа, переходим в свой сервер и выписываем следующие данные.
    -Переходим в раздел Мои услуги
    -Выбираем ранее арендованный сервер и открываем его
    -Выписываем следующие данные:
    IP-адрес сервера

    Имя пользователя
    Пароль


    3.
    Скачиваем и устанавливаем программу PuTTY (официальный сайт).


    4. Теперь есть две вариации установки скриптов на сервер.
    4.1. Скачиваем и устанавливаем программу MobaXterm (официальный сайт).

    4.2. Нажимаем "Session", "SSH", в "Remote host" указываем Имя хоста(айпи) и жмём "OK".


    4.3. Возле текста "login as" вводим Имя пользователя, далее вводим Пароль и подключаемся к серверу.

    4.4. Перемещаем папку с вашим скриптом/ботом в левое окно.

    [IMG]
    4.1. Скачиваем и устанавливаем программу WinSCP (официальный сайт).

    4.2. Открываем "Параметры", "Настройки", "Интеграция-Программы", указываем путь к установленному раннее PuTTy и ставим галочки на "Помнить пароль сессии и передавать его PuTTy (SSH)" и "Открывать telnet-сессии в PuTTy для сессий FTP".

    4.4. Нажимаем на "Новое соединение", далее "Новое подключение", указываем Имя хоста(айпи), Имя пользователя, Пароль и жмём "Войти".

    4.3. Перемещаем папку с вашим скриптом/ботом в правое окно.

    [IMG]


    4.5. Жмём на кнопку открытия PuTTy окна.

    [IMG]
    4.1. Скачиваем и устанавливаем программу FileZilla (официальный сайт)

    4.2. Указываем Хост(sftp://ВашАйпи), Имя пользователя, Пароль и жмём "Быстрое соединение".


    [IMG]


    4.3.
    Перемещаем папку с вашим скриптом/ботом в правое окно.

    [IMG]


    4.4. Открываем ранее установленную программу PuTTY.

    4.5. После запуска, в поле "Host Name (or ip address)" указываем ранее полученный наш Айпи адрес и нажимаем "Open".



    [IMG]


    4.6.
    После открытия консоли, вводим своё
    Имя пользователя(login as) и Пароль(password). (При вводе пароля, символы не будут отображаться, не пугайтесь)


    [IMG]
    [IMG]
    5. Теперь необходимо установить необходимые утилиты, сам питон и нужные библиотеки.

    (вместо python3.9, можете указать нужную вам версию питона)
    Code

    sudo apt-get update -y&& sudo apt-get upgrade -y&& sudo apt-get install curl -y
    bash <(curl -s https://raw.githubusercontent.com/djimboy/djimboy/main/dj_install.sh)
    Code

    sudo apt-get update
    sudo apt-get upgrade -y (если вылезет окно, жмём enter)
    sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev curl software-properties-common -y
    sudo apt install software-properties-common
    sudo add-apt-repository ppa:deadsnakes/ppa (если вылезет окно, жмём enter)
    sudo apt-get install screen -y
    sudo apt-get install python3.9 -y
    sudo apt-get install python3-pip -y
    sudo apt-get install python3.9-dev -y
    sudo apt-get install python3.9-distutils -y
    python3.9 -m pip install pip --upgrade
    python3.9 -m pip install distlib --upgrade
    python3.9 -m pip install setuptools --upgrade

    Библиотеки для питона устанавливаем так
    Code
    python3.9 -m pip install НазваниеБиблиотеки
    Если имеется файл requirements.txt, то устанавливаем так:
    Code
    python3.9 -m pip install -r requirements.txt


    6. Запуск скрипта.

    -Чтобы скрипт работал 24/7 и не выключался, нам нужно использовать раннее установленную утилиту screen.
    Вводим команду
    screen -S ЛюбоеНазваниеСессии и жмём Enter. После открытия окна screen, переходим в директорию со скриптом и прописываем:

    ⁡python3.9 main.py

    -Скрипт запущен. Чтобы свернуть окно screen, нажмите кнопки: CTRL + A + D
    -Теперь можете смело закрывать PuTTy окно.

    7. Скрипт успешно запущен.


    В - Вопрос | О - Ответ

    В: Как остановить/перезагрузить скрипт?
    О: Прописываем команду screen -ls и получаем список скринов. Слева указаны айди скринов. Прописываем screen kill АйдиСкрина. Далее запускаем новый скрин по инструкции выше.

    В: При попытке подключения к screen'у пишет "There is no screen to be resumed matching".
    О: Используйте screen -xr АйдиСкрина, вместо screen -r АйдиСкрина.

    В: Как свернуть активный screen или выйти в главное меню?
    О: Нажимаем сочетание клавиш CTRL + A + D.

    В: Хочу установить несколько скриптов.
    О: Выходим в главное меню если мы находимся в уже открытом screen'е. Прописываем команду screen -S ЛюбоеНазваниеСессии для открытия нового screen окна и запускаем свой скрипт.


    при ошибках и опечатках, просьба сообщать :)
     
  2. infinityjq
    infinityjq Dec 11, 2020 310 May 20, 2019
    Годно, чел)
    Но я бы взял msk.host, а так ништяк.
     
    1. dvjoker
      NET, ( python3 main.py & ) в конце команды ставь символ и бот запустится в фоновом режиме пока дедик не упадет или пока сам его не перезапустишь.
    2. ZeN
  3. ИроничныйЧёрт
    Мерси
     
  4. Pcholken
    Pcholken Dec 14, 2020 Banned 819 Jan 27, 2019
    Можно легче, просто pip3 install <пакет>
     
    1. Pcholken
      Djimbo, По стандарту в линуксе есть только 2 версии питона 2.7 и последняя 3 версии, (сейчас на убунту 3.8.6)
    2. Djimbo Topic starter
      Pcholken, Бывает что нужна не самая последняя версия, а определённая
    3. sznakala
      Djimbo, урыл, закопал
  5. georgioitem
    а библиотеки типа bs4 и дискорд сккачивать не надо?
     
    1. Djimbo Topic starter
      georgioitem, Надо. Выше я показал как устанавливать библиотеки.
  6. whom
    whom Jan 12, 2021 Качественная разработка lolz.live/threads/7145903
    Почему ты не используешь systemd? Отличный и простой демонайзер, да еще и рестартит твой скрипт при ошибках, кайф же ну....
     
  7. fivon708
    fivon708 Jan 30, 2021 431 Dec 30, 2020
    Лучше всего каждый скрипт запускать в своем виртуальном окружении.
    Для каждого скрипта будут установлены свои библиотеки, они не будут конфликтовать друг с другом.
    Например, если скрипт № 1 работает на библиотеке старой версии, а скрипту № 2 нужна точно такая же, но новой версии.
    Без использования вирт. окружения вы не сможете установить одну и ту же библиотеку 2-х разных версий.

    Чтобы установить вирт. окружение, заходим в директорию где мы планируем разместить наш скрипт и вводим команды:

    sudo pip3.7 install virtualenv
    python3 -m venv venv

    Запускаем виртуальное окружение:

    source venv/bin/activate

    Чтобы скрипт при падении сервера или после ошибки запускался по новой можно установить supervisor
    Хорошая статья по установке и настройки supervisor для Centos https://stackoverflow.com/questions...on-centos-7-to-run-laravel-queues-permanently
    Для других ОС тоже легко гуглится.

    Сразу все необходимые библиотеки можно устанавливать одной командой из файла:

    pip install -r requirements.txt
     
  8. Kanade
    Я конечно хуй знает, проще дедик амазона за 1$ на год взять и делать там что хочешь, а не платить 111₽/месяц:roflanBuldiga:
     
    1. Djimbo Topic starter
      Kanade, Лучше тогда от Микрософта. У Амазона траблов много)
      $yku 5 аккаунтов заморозили. Да и дедики у них слабые.
  9. valeriagood
    valeriagood Feb 6, 2021 Banned 86 Dec 13, 2020
    Авторку ему
     
  10. kanokido
    kanokido Feb 15, 2021 Отпускаю грехи по IP 111 Aug 15, 2017
    ты золотой человек, спасибо)
     
  11. Relax
    Relax Mar 2, 2021 :tg::tether: 440 Dec 5, 2020
    Прекрасный бот, Djimbo помог с установкой, даже на самые глупые вопросы давал ответы :)
    Спасибо! Годная тема
     
  12. JimmyDean
    JimmyDean Mar 2, 2021 Banned 19 Jan 12, 2019
    ля, лучший чел, решил мои траблы с запуском:froglove::froglove::froglove:+rep
     
  13. slesar322
    Можешь помочь я тебе написал в сообщения
     
  14. Thanatophobia
    за ******* панель бан прилетит?
     
    1. Djimbo Topic starter
      Thanatophobia, Да за ботов вроде баны не прилетают.
      Просто делай иногда бэкапы)
  15. YevGen213
    YevGen213 Mar 21, 2021 2 Nov 16, 2020
    У меня Кали Линукс, могу просто на своем пк запустить и мозги не парить.
     
    1. YWerts
      YevGen213, да хоть на винде или малинке
  16. Bloggervat
    Bloggervat Mar 29, 2021 0 Mar 29, 2021
    А что делать если выдает ошибку в CMD ssh: connect to host MY IP port 22: Connection timed out
     
    1. Djimbo Topic starter
      Bloggervat, Подключись тогда через FTP
    2. Bloggervat
      Djimbo, а через фтп не получается ( не кидается файл + нету папки root)
  17. VasyaUndetected
    [IMG]


    Djimbo ТОП!

    Быстро объяснил что делать, и довёл до того что я всё понял и бот запустился ♥
     
  18. maytay1024
    maytay1024 Apr 16, 2021 Banned 37 Feb 2, 2021
    магаз топ, крч спасибо))))))
     
  19. NUDGE
    [IMG] Во такая залупа
     
    1. Djimbo Topic starter
      NUDGE, Неверный логин или пароль
    2. NUDGE
      Djimbo, Уже понял. Нашел верные, но все равно не может подключиться
    3. NUDGE
      Djimbo, а все заработало
  20. EgorOreex
    EgorOreex May 13, 2021 Banned 4 May 8, 2021
    Плмогите, при установке питона просит подтверждение установки [Y/n]. Писал и y и Y и YES и yes. Выдаёт аборт
     
Loading...
Top