CSUBOT er en åpen kildekode superadministratorrobot.
Denne artikkelen beskriver hvordan du distribuerer CSUBOT selv.
Vennligst les dette dokumentet fullstendig først: CSUBOT Robot Bruksanvisning
Anbefales: Sjekk din offentlige IP for å få tilgang til forskjellige nettsteder , for å sjekke gjeldende nettverksmiljø.
Forutsetninger
For å distribuere CSUBOT selv, må du oppfylle minst følgende betingelser:
- Ha et domene. (Ha minst ett subdomene for backend. Faktisk trenger du to subdomener for frontend og backend, men vanligvis kan frontend-domenet leveres av distribusjonsplattformen)
- Ha en server. Eller distribuer det på en plattform som kan distribuere back-end-tjenester. Hvis du kjenner en gratis plattform som kan distribuere back-end-tjenester, ikke nøl med å klikk her og legg igjen en kommentar til forfatteren .
- Ha en Telegram-konto som ikke er begrenset for å opprette en Telegram-robot og få robotens Token
- Ha en Cloudflare-konto som ikke er begrenset for å aktivere Cloudflare Turnstile-captcha. Registrer konto: https://dash.cloudflare.com/
Operasjonstrinn
- Aktiver Cloudflare Turnstile
- Distribuer frontend
- Opprett Telegram-robot
- Konfigurer backend
Aktiver Cloudflare Turnstile
Klikk på denne lenken for å åpne Cloudflare Turnstile-konfigurasjonspanelet Turnstile komponentkonfigurasjon
Klikk på add widget for å legge til en Turnstile-widget
Klikk på Add Hostnames for å legge til front-end domenet. Hvis du planlegger å bruke domenet som tilbys av front-end hostingplattformen, kan du skrive hva som helst her.
Klikk på opprett-knappen, og du vil se Site Key og Secret Key
Distribuer frontend
Vi tar distribusjon til front-end hostingplattform som et eksempel.
- Åpne https://github.com/cjh0613/csubot-vue , fork dette depotet
- Velg distribusjonsplattformen, for eksempel Cloudflare Pages, Vercel, Netlify, etc.
- Velg å importere fra Github-depotet, og velg depotet som er forket i det første trinnet.
Arbeidsstien er konfigurert som rotkatalogen til prosjektet, og kompileringskommandoen er:
npm install && npm run build
Utgangskatalogen er:
dist/
Konfigurer miljøvariabler:
VITE_ENDPOINT=https://xxxx.com <Backend URL, trenger https>
VITE_SITEKEY=0x4AAAAAABBBBBBBBBBB <Cloudflare turnstile sin nettstednøkkel Site Key (den øverste)>
- Start distribusjonen, og du vil se domenet som tilbys av plattformen etter at den er fullført. Du kan også binde ditt eget domene. Du må vente på DNS-konfigurasjonen og sertifikatgenereringen.
Opprett Telegram-robot
Send en privat melding til
https://t.me/BotFather
, send /newbot
, og følg robotens instruksjoner for å opprette en ny robot. Etter at opprettelsen er fullført, vil du motta en Token
Konfigurer backend
Du kan velge å kjøre den binære eksekverbare filen direkte, eller kompilere den selv.
Miljøvariabelreferanse
TGWD_TOKEN=<Telegram-robotens token, hentet fra @botfather>
TGWD_FRONTEND_DOMAIN=<Frontend-domene, ingen https kreves>
TGWD_SECRET=<Fyll ut hva som helst>
TGWD_PORT=8000
TGWD_CFTS_API_KEY=<Cloudflare turnstile sin Secret Key nøkkel (den under nettstednøkkelen)>
Bruk binær eksekverbar fil
Vi tar linux amd64-operativsystemet som et eksempel.
Først, opprett en ny mappe.
mkdir csubot && cd csubot
Last ned den binære eksekverbare filen. For nedlastingslenken her, vennligst åpne
https://github.com/cjh0613/csubot/releases
for å få den nyeste lenken, du må kanskje klikke på Show all assets
for å finne filen som passer for din plattform.
wget https://github.com/cjh0613/csubot/releases/download/vxxx/csubot-linux-amd64.zip
Fordi det er en zip-komprimert pakke, pakk ut:
unzip csubot-linux-amd64.zip
Hvis du ikke kan kjøre denne kommandoen, vennligst bekreft at du har installert unzip
-pakken.
Gå inn i katalogen der csubot er lokalisert,
Bruk følgende kommando for å se den skjulte .env.example
-filen.
ls -la
Bruk din tekstredigerer (som nano, vim), opprett en ny fil .env
, og konfigurer den med referanse til eksempelfilen .env.example
.
Prøv å kjøre:
export $(grep -v '^#' .env | xargs) && ./csubot
Kompiler selv
Utfør kommandoen i rotkatalogen til prosjektet:
go build -o csubot
Prøv å kjøre:
export $(grep -v '^#' .env | xargs) && ./csubot
HTTPS
Backend gir ikke direkte støtte for https, bare http-tilgang er tillatt.
Du kan bruke tjenester som Apache, Nginx, Microsoft Internet Information Services (IIS) for å konfigurere HTTPS.
Hvis du bruker Cloudflare CDN, kan du også sette krypteringsmodusen til Flexible
i SSL/TLS-kryptering. På denne måten bruker brukerens tilgang til Cloudflare-serveren den automatisk konfigurerte https-protokollen til Cloudflare, og Cloudflares tilgang til serveren du konfigurerte back-end-tjenesten bruker http-protokollen.
Kjør som systemd-tjeneste
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
Opprett tjenestebruker
sudo useradd --system --no-create-home --shell /sbin/nologin csubotuser
Konfigurer tillatelser
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
Opprett og rediger /etc/systemd/system/csubot.service
, skriv inn
[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
# Last inn miljøvariabel-filen
EnvironmentFile=/usr/local/bin/csubot/.env
# Start tjenesten
sudo systemctl start csubot.service
# Vis kjørestatus
sudo systemctl status csubot.service
# Sett opp automatisk oppstart
sudo systemctl enable csubot.service
Andre versjoner av denne nettsiden
Denne artikkelen har flere språkversjoner.
Hvis du ønsker å legge igjen en kommentar, vennligst besøk følgende nettsider:
Disse nettsidene støtter kun visning, og tillater ikke kommentering eller etterlating av meldinger, men de tilbyr flere språkalternativer og raskere innlastingstid:
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