Hostim falas për botin e Telegram në Google Cloud Platform

Pse GCP?

Kur isha duke shkruar bot për Telegram, u përballa me pyetjen si të bëja që boti të funksiononte vazhdimisht dhe falas. Opcioni me Heroku dhe Pythonanywhere ka kufij shumë të vegjël nëse keni më shumë se një bot. Prandaj, vendosa të përdor GCP. Platforma ofron 300 $ falas për një vit + zbritje të mëdha gjatë përdorimit të këtyre mjeteve (deri në 94%).

Hostim falas për botin e Telegram në Google Cloud Platform

Si ta hostoni botin tuaj?

Hapi 1. Regjistrimi në GCP

Shkoni te faqja GCP dhe klikojmë Nisni falas.
Hostim falas për botin e Telegram në Google Cloud Platform
Vendosni të dhënat tuaja dhe kartën. Paratë nga karta nuk do të merren, nëse nuk aktivizoni vetë një abonim të paguar.

Hostim falas për botin e Telegram në Google Cloud Platform

Hapi 2. Krijoni një makinë virtuale

Pas regjistrimit, do të jeni në faqen kryesore të shërbimit. Ju duhet të zgjidhni në seksionin e Burimeve skedën Compute Engine.
Hostim falas për botin e Telegram në Google Cloud Platform
Duhet të krijoni një ekzemplar të ri.

Hostim falas për botin e Telegram në Google Cloud Platform
Nëse nuk do të zhvilloni DB në makinën virtuale, atëherë mund të merrni g1-small, përndryshe ju rekomandoj n1-standard.

Hostim falas për botin e Telegram në Google Cloud Platform
Duhet gjithashtu të zgjidhni një OS. Unë zgjodha Debian GNU/Linux 9 (stretch).

Hostim falas për botin e Telegram në Google Cloud Platform
Të gjitha, VM është krijuar. Ndërsa shpërndarja e saj zgjat nga 1 deri në 5 minuta.

Hapi 3. Konfigurimi i makinës virtuale

Mund të lidheni përmes SSH nga PC juaj ose të ndërveproni përmes platformës.
Për këtë, klikoni në SSH.

Hostim falas për botin e Telegram në Google Cloud Platform
Do t'ju hapet një terminal Linux në një dritare të re.

Hostim falas për botin e Telegram në Google Cloud Platform
Tani kalojmë në konfigurim. Fillimisht shkruani komandën:

sudo apt-get update

për të përditësuar informacionin mbi versionet më të reja të paketave.

MĂ« pas shkruaj:

sudo apt-get install python3-setuptools
sudo apt-get install python3-pip

Python vetë nuk ka nevojë të instalohet, ai është tashmë aty.

Tani është e nevojshme të instaloni të gjitha bibliotekat e nevojshme. Ka një marrëzi të vogël, të gjitha bibliotekat duhet të instalohen dy herë:

pip3 install ‘name_of_package’

për ta përdorur përmes komandës python3, dhe

sudo pip3 install ‘name_of_package’

për systemd. Ky utilitet do t'ju ndihmojë të nisni botin dhe ta rifilloni atë nëse ai bie.
Mënyra më e thjeshtë për të nisur botin përmes python3, por ai do të ndalet nëse ju shkëputeni. Mund të përdorni screen, por boti nuk do të rishkaktohet vetë. Gjithashtu mund të përdorni crontab me kontrollin e portit, por mendoj se kjo opsion është më e komplikuar se systemd.

Hapi 4. Ngarko botin në server

Ka dy mënyra për të ngarkuar botin tuaj. Nëse nuk jeni të njohur me Git, mund ta arkivoni thjesht botin në .tar dhe ta ngarkoni atë në server:

Hostim falas për botin e Telegram në Google Cloud Platform
Më pas, e hapim me komandën:

tar -xvf yourfile.tar

Tani boti juaj ruhet në dosjen me emrin e arkivës.

Mënyra e dytë është përmes Git. Mendoj se nuk ka nevojë të shpjegoj si ta bëni këtë për njerëzit që dinë ta përdorin.

Pas instalimit me komandën:

sudo apt install git

Mund ta klononi në VM tuaj.

Më pas kalojmë në konfigurimin e systemd. Për këtë, kalojmë në dosjen e tij:

cd /etc/systemd/system

Dhe krijojmë skedarin bot.service:

sudo nano bot.service

Shkruani në dritaren që u hap:


[Unit]
Description=Telegram bot 'Emri i botit'
After=syslog.target
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/home/emri juaj/userit/emri i dosjes ku ndodhet boti
ExecStart=/usr/bin/python3 /home/emri juaj/userit/emri i dosjes ku ndodhet boti/bot.py

RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

Mbyllni dhe ruani skedarin. Mbyllet me komandën Ctrl+X.

Pas kësaj, futni komandat njëra pas tjetrës:

sudo systemctl daemon-reload
sudo systemctl enable bot
sudo systemctl start bot
sudo systemctl status bot

Nëse gjithçka shkon mirë, do të shihni diçka të ngjashme:

Hostim falas për botin e Telegram në Google Cloud Platform
Tani boti juaj punon autonomisht. Shpresoj që artikulli im t'ju ndihmojë të hostoni botin tuaj.

P.S.

1. Kontrolloni botin tuaj për gabime

Aktivizoni botin tuaj dhe kontrolloni funksionimin e tij para se ta lançoni përmes systemd. Për këtë, shkoni në dosjen e botit dhe aktivizoni përmes python.

cd 
python3 bot.py

2. Shtoni kodimin në skedarët me skripte py

#!/usr/bin/env python
# -*- coding: utf-8 -*-

Vendosni në fillim të skedarit.

3. Gabimet në systemd

Nëse e keni kontrolluar botin për gabime dhe ai punonte normalisht, por nuk dëshiron të aktivizohet në systemd, mund të shihni loget dhe të kuptoni se ku është gabimi duke kontrolluar skedarin:

sudo nano /var/log/syslog

Mund ta shkarkoni këtë skedar dhe ta shikoni në kompjuterin tuaj përmes Notepad++.

4. Përditësimi i botit

Nëse dëshironi të shtoni ose ngarkoni një version të ri të botit, atëherë shkruani komandën:

sudo systemctl stop bot

Kryer të gjitha manipulimet e nevojshme. Pastaj shkruani komandat e mëposhtme për ta aktivizuar përsëri:

sudo systemctl daemon-reload
sudo systemctl start bot
sudo systemctl status bot

Burimi: habr.com

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster