CSUBOT je open source superadministrátorský robot.
Tento článek popisuje, jak si CSUBOT nasadit sám.
Přečtěte si prosím nejprve celou tuto dokumentaci: Návod k použití robota CSUBOT
Doporučeno: Zjistěte veřejnou IP adresu tohoto počítače pro přístup k různým webovým stránkám, abyste zkontrolovali aktuální síťové prostředí.
Předpoklady
Samostatné nasazení CSUBOT vyžaduje splnění alespoň následujících podmínek:
- Vlastnit doménu. (Vlastnit alespoň subdoménu pro backend. Ve skutečnosti budete potřebovat dvě subdomény pro frontend a backend dohromady, ale obecně může být doména frontendu poskytnuta nasazenou platformou)
- Vlastnit server. Nebo nasadit na platformě, na které lze nasadit backendové služby. Pokud znáte bezplatnou platformu, na které lze nasadit backendové služby, neváhejte a klikněte sem a sdělte to autorovi v komentářích .
- Mít neomezený účet Telegramu pro vytvoření robota Telegramu a získání tokenu robota
- Mít neomezený účet Cloudflare pro povolení ověřovacího kódu Cloudflare Turnstile. Registrace účtu: https://dash.cloudflare.com/
Kroky operace
- Povolte Cloudflare Turnstile
- Nasaďte frontend
- Vytvořte Telegram robota
- Nakonfigurujte backend
Povolte Cloudflare Turnstile
Kliknutím na tento odkaz otevřete konfigurační panel Cloudflare Turnstile Konfigurace komponenty Turnstile
Kliknutím na add widget přidejte widget Turnstile
Klikněte na Add Hostnames a přidejte doménu frontendu. Pokud plánujete použít doménu poskytovanou platformou pro hostování frontendu, můžete sem napsat cokoli.
Klikněte na tlačítko Vytvořit a poté uvidíte Site Key a Secret Key
Nasazení frontendu
Jako příklad si vezměme nasazení na platformu pro hostování frontendu.
- Otevřete https://github.com/cjh0613/csubot-vue a vytvořte fork tohoto repozitáře
- Vyberte platformu pro nasazení, například Cloudflare Pages, Vercel, Netlify atd.
- Vyberte import z repozitáře Github a vyberte repozitář forknutý v prvním kroku.
Konfigurační cesta práce je kořenový adresář projektu, příkaz pro kompilaci je:
npm install && npm run build
Výstupní adresář je:
dist/
Konfigurace proměnných prostředí:
VITE_ENDPOINT=https://xxxx.com <Backend URL, vyžaduje https>
VITE_SITEKEY=0x4AAAAAABBBBBBBBBBB <Klíč webu (Site Key) Cloudflare turnstile (ten nahoře)>
- Začněte nasazovat, po dokončení uvidíte doménu poskytovanou platformou. Můžete také svázat vlastní doménu. Je třeba počkat na konfiguraci DNS a generování certifikátu.
Vytvořte Telegram robota
Soukromě napište
https://t.me/BotFather
a odešlete /newbot , vytvořte nového robota podle pokynů robota, po dokončení vytvoření obdržíte Token
Konfigurace backendu
Můžete si vybrat, zda spustíte binární spustitelný soubor přímo, nebo ho sami zkompilujete.
Referenční proměnné prostředí
TGWD_TOKEN=<Token robota Telegramu, získaný z @botfather>
TGWD_FRONTEND_DOMAIN=<Doména frontendu, nevyžaduje https>
TGWD_SECRET=<Vyplňte cokoli>
TGWD_PORT=8000
TGWD_CFTS_API_KEY=<Tajný klíč (Secret Key) Cloudflare turnstile (ten pod klíčem webu)>
Použití binárního spustitelného souboru
Jako příklad si vezměme operační systém linux amd64.
Nejprve vytvořte novou složku.
mkdir csubot && cd csubot
Stáhněte si binární spustitelný soubor. Odkaz ke stažení naleznete na
https://github.com/cjh0613/csubot/releases
, kde najdete nejnovější odkaz, možná budete muset kliknout na Show all assets , abyste našli soubor vhodný pro vaši platformu.
wget https://github.com/cjh0613/csubot/releases/download/vxxx/csubot-linux-amd64.zip
Protože se jedná o komprimovaný soubor ve formátu zip, rozbalte jej:
unzip csubot-linux-amd64.zip
Pokud tento příkaz nelze spustit, ujistěte se, že jste úspěšně nainstalovali balíček unzip.
Přejděte do adresáře, kde se nachází csubot,
Pomocí následujícího příkazu můžete zobrazit skrytý soubor .env.example.
ls -la
Použijte textový editor (např. nano, vim ) a vytvořte nový soubor .env , který nakonfigurujete podle vzorového souboru .env.example.
Zkuste spustit:
export $(grep -v '^#' .env | xargs) && ./csubot
Vlastní kompilace
Spusťte příkaz v kořenovém adresáři projektu:
go build -o csubot
Zkuste spustit:
export $(grep -v '^#' .env | xargs) && ./csubot
HTTPS
Backend nepodporuje přímo https, lze k němu přistupovat pouze prostřednictvím http.
Můžete použít služby jako Apache, Nginx, Microsoft Internet Information Services (IIS) ke konfiguraci HTTPS.
Pokud používáte Cloudflare CDN, můžete také nastavit režim šifrování na Flexible v SSL/TLS encryption. Tímto způsobem uživatelé přistupují k serveru Cloudflare pomocí automaticky konfigurovaného protokolu https od Cloudflare a poté Cloudflare přistupuje k serveru, který jste nakonfigurovali pro backendové služby, pomocí protokolu http.
Spuštění jako služba systemd
sudo mkdir /usr/local/bin/csubot/
sudo cp .env /usr/local/bin/csubot/.env
sudo cp csubot /usr/local/bin/csubot/csubot
sudo cp -r ./locales /usr/local/bin/csubot/locales
Vytvořte uživatele služby
sudo useradd --system --no-create-home --shell /sbin/nologin csubotuser
Konfigurace oprávnění
sudo chown csubotuser:csubotuser /usr/local/bin/csubot/csubot
sudo setfacl -R -m u:csubotuser:r /usr/local/bin/csubot
sudo chmod +x /usr/local/bin/csubot/csubot
Vytvořte a upravte /etc/systemd/system/csubot.service a napište
[Unit]
Description=CSUBOT Backend
After=network-online.target
Wants=network-online.target
[Install]
WantedBy=multi-user.target
[Service]
Type=simple
User=csubotuser
Group=csubotuser
ExecStart=/usr/local/bin/csubot/csubot
WorkingDirectory=/usr/local/bin/csubot
RestartSec=10s
Restart=always
# Restart=on-failure
# Načtení souboru proměnných prostředí
EnvironmentFile=/usr/local/bin/csubot/.env
# Spusťte službu
sudo systemctl start csubot.service
# Zobrazte stav běhu
sudo systemctl status csubot.service
# Nastavte spuštění při startu
sudo systemctl enable csubot.service
Ostatní verze této webové stránky
Tento článek má několik jazykových verzí.
Tyto webové stránky podporují pouze prohlížení, nelze na nich publikovat komentáře ani zanechávat zprávy, ale nabízejí více jazykových možností a mají kratší dobu načítání:
ZH EN ZH-TW JA RU KO CS ES AR FR PT DE TR IT NL SV DA FI PL UK HE RO HU EL HR TH HI BN ID SW VI NO