Hoekom GCP?
Toe ek telegramme vir bots skryf, het ek die vraag gekry hoe om die bot heeltyd vinnig en gratis te laat werk. Die Heroku- en Pythonanywhere-opsies is heeltemal te laag as jy meer as een bot het. So ek het besluit om GCP te gebruik. Die platform bied $300 vir 'n jaar gratis + groot afslag wanneer hierdie fondse gebruik word (tot 94%).

Hoe om jou bot te huisves?
Stap 1: Registreer vir GCP
Kom ons gaan na die webwerf en druk Kom aan die gang vir gratis.

Voer jou besonderhede en kaart in. Geld vanaf die kaart sal nie gedebiteer word as jy nie self die betaalde intekening aktiveer nie.

Stap 2. Skep 'n virtuele masjien
Na registrasie sal jy jouself op die hoofblad van die diens bevind. Jy moet die Compute Engine-oortjie in die Resources-afdeling kies.

Jy moet 'n nuwe instansie skep.

As jy nie die databasis gaan ontplooi nie virtuele masjien, dan kan jy g1-klein neem, andersins beveel ek n1-standaard aan.

Необходимо будет выбрать также ОС. Я выбрал Debian GNU/Linux 9 (stretch).

Dit is dit, die VM is geskep. Die gewone ontplooiing daarvan neem van 1 tot 5 minute.
Stap 3: Stel die virtuele masjien op
U kan via SSH vanaf u rekenaar koppel of deur die platform kommunikeer.
Om dit te doen, klik op SSH.
![]()
У вас откроется терминал Linux in 'n nuwe venster.

Kom ons gaan nou na die opstelling. Voer eers die opdrag in:
sudo apt-get updateom inligting oor die nuutste pakketweergawes op te dateer.
Nadat ons ingegaan het:
sudo apt-get install python3-setuptools
sudo apt-get install python3-pipPython self hoef nie geïnstalleer te word nie, dit is reeds daar.
Nou moet jy al die nodige biblioteke installeer. Daar is 'n klein nuanse, alle biblioteke moet twee keer geïnstalleer word:
pip3 install ‘name_of_package’vir gebruik via python3-opdrag, en
sudo pip3 install ‘name_of_package’ vir systemd. Hierdie program sal jou help om die bot te begin en dit weer te begin as dit ineenstort.
Die maklikste manier om die bot te laat loop is deur python3, maar dit sal afskakel as jy ontkoppel. Jy kan skerm gebruik, maar die bot sal nie self herbegin nie. U kan ook crontab met 'n poortkontrole gebruik, maar ek dink hierdie opsie is meer ingewikkeld as systemd.
Stap 4. Laai die bot op na die bediener
Daar is twee maniere om jou bot op te laai. As jy nie Git-vriendelik is nie, kan jy die bot eenvoudig na .tar rits en dit na die bediener oplaai:

Daarna, pak dit uit met die opdrag:
tar -xvf yourfile.tarNou is jou bot gestoor in 'n gids met die naam van die argief.
Die tweede manier is deur Git. Ek dink dit is nie die moeite werd om te verduidelik hoe om dit te doen aan mense wat weet hoe om dit te gebruik nie.
Nadat u dit geïnstalleer het met die opdrag:
sudo apt install gitJy kan dit na jou VM kloon.
Daarna gaan ons voort met die opstel van systemd. Om dit te doen, gaan na sy gids:
cd /etc/systemd/systemEn skep 'n bot.service-lêer:
sudo nano bot.serviceTik die volgende in die venster wat oopmaak:
[Unit]
Description=Telegram bot 'Имя бота'
After=syslog.target
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/home/название вашего юзера/название папки в которой лежит бот
ExecStart=/usr/bin/python3 /home/название вашего юзера/название папки в которой лежит бот/bot.py
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
Maak toe en stoor die lêer. Gesluit met Ctrl+X.
Voer daarna die opdragte om die beurt in:
sudo systemctl daemon-reload
sudo systemctl enable bot
sudo systemctl start bot
sudo systemctl status bot
As alles goed gaan, sal jy iets soos hierdie sien:

Alles, nou werk jou bot onafhanklik. Ek hoop dat my artikel jou sal help om jou bot aan te bied.
PS
1. Gaan jou bot na vir foute
Begin jou bot en toets dit uit voordat jy dit deur systemd laat loop. Om dit te doen, gaan na die gids met die bot en hardloop deur python.
cd <папка вашего бота>
python3 bot.py2. Voeg enkodering by lêers met py-skrifte
#!/usr/bin/env python
# -*- coding: utf-8 -*-
Voeg aan die begin van die lêer in.
3. Foute in systemd
As jy die bot vir foute nagegaan het en dit het goed gewerk, maar dit wil nie in systemd loop nie, dan kan jy na die logs kyk en verstaan wat die fout is deur die lêer te bekyk:
sudo nano /var/log/syslogJy kan hierdie lêer aflaai en dit op jou rekenaar bekyk met Notepad++.
4.Bot-opdatering
As jy 'n nuwe weergawe van die bot wil byvoeg of oplaai, voer dan die opdrag in:
sudo systemctl stop botSien al die nodige manipulasies. En voer dan die volgende opdragte in om dit weer te laat werk:
sudo systemctl daemon-reload
sudo systemctl start bot
sudo systemctl status botBron: will.com
