地球人

地球人的空间

世上本没有路
tg_channel
mastodon
pleroma

如何部署 CSUBOT 機器人程序?

CSUBOT 是一個開源的超級管理員機器人。

本文介紹如何自行部署 CSUBOT 。

請先完整閱讀這個文檔: CSUBOT 機器人使用說明書

推薦: 查詢本機訪問不同網站的公網 IP ,用於檢查當前網絡環境。

前提條件#

自行部署 CSUBOT ,需要至少滿足如下條件:

  • 持有域名。 (至少持有一個二級域名,用於後端。實際前端和後端一共需要兩個域名,但一般前端域名可以由部署的平台提供)
  • 持有一個伺服器。或者部署在可以部署後端服務的平台上。如果您知道一個免費的,可以部署後端服務的平台,請不要猶豫, 點擊這裡,發布評論告訴作者
  • 持有沒有被限制的 Telegram 賬戶,用於創建 Telegram 機器人,並且獲取機器人的 Token
  • 持有沒有被限制的 Cloudflare 賬戶,用於啟用 Cloudflare Turnstile 驗證碼。註冊賬戶: https://dash.cloudflare.com/

操作步驟#

  1. 啟用 Cloudflare Turnstile
  2. 部署前端
  3. 創建 Telegram 機器人
  4. 配置後端

啟用 Cloudflare Turnstile#

點擊這個鏈接,打開 Cloudflare Turnstile 配置面板 Turnstile 組件配置

點擊 add widget,添加一個 Turnstile 部件

點擊 Add Hostnames ,添加前端的域名。如果您打算使用前端托管平台提供的域名,這裡可以隨便寫。

點擊創建按鈕,然後就可以看到 Site Key 和 Secret Key

部署前端#

我們以部署到前端托管平台為例。

  1. 打開 https://github.com/cjh0613/csubot-vue , fork 這個倉庫
  2. 選擇部署的平台,如 Cloudflare Pages, Vercel, Netlify 等都可以。
  3. 選擇由 Github 倉庫導入,選擇第一步中 fork 的倉庫。

工作路徑配置為項目根目錄,編譯命令是:

npm install && npm run build

輸出的目錄是:

dist/

配置環境變量:

VITE_ENDPOINT=https://xxxx.com <後端 URL,需要https>

VITE_SITEKEY=0x4AAAAAABBBBBBBBBBB <Cloudflare turnstile 的站點密鑰 Site Key (位置靠上的那個)>
  1. 開始部署,完成之後就可以看到平台提供域名。您也可以綁定自己的域名。需要等待 DNS 配置和證書生成。

創建 Telegram 機器人#

私聊 https://t.me/BotFather ,發送 /newbot ,根據機器人的提示創建新機器人,創建完成之後,您會收到一個 Token

配置後端#

環境變量參考#

TGWD_TOKEN=<Telegram 機器人的 token , @botfather 處獲取>
TGWD_FRONTEND_DOMAIN=<前端域名,不需要https>
TGWD_SECRET=<隨便填>
TGWD_PORT=8000
TGWD_CFTS_API_KEY=<Cloudflare turnstile 的 Secret Key 密鑰(站點密鑰下面的那個)>

使用二進制執行文件#

我們以 linux amd64 操作系統為例。

首先創建一個新的文件夾。

mkdir csubot && cd csubot

下載二進制執行文件。這裡的下載鏈接,請打開 https://github.com/cjh0613/csubot/releases 獲取最新的鏈接,可能需要點擊 Show all assets ,才能找到適合您的平台的文件。

wget https://github.com/cjh0613/csubot/releases/download/vxxx/csubot-linux-amd64.zip

因為是 zip 格式的壓縮包,解壓:

unzip csubot-linux-amd64.zip

如果無法執行這個命令,請確認成功安裝 unzip 包。

進入 csubot 所在目錄,

使用以下命令,可以查看到隱藏的 .env.example 文件。

ls -la

使用您的文本編輯器(如 nano, vim ),創建一個新的文件 .env ,參考示例文件 .env.example 進行配置。

嘗試運行:

export $(grep -v '^#' .env | xargs) && ./csubot

自行編譯#

在項目根目錄執行命令:

go build -o csubot

嘗試運行:

export $(grep -v '^#' .env | xargs) && ./csubot

HTTPS#

後端並未直接提供 https 的支持,僅可 http 訪問。

您可以使用 Apache, Nginx, Microsoft Internet Information Services (IIS) 等服務配置 HTTPS 。

如果您使用 Cloudflare CDN ,也可以在 SSL/TLS encryption 將 encryption mode 設置為 Flexible 。這樣用戶訪問 Cloudflare 伺服器是使用的 Cloudflare 自動配置的 https 協議,然後 Cloudflare 訪問您配置後端服務的伺服器是採用的 http 協議。

本網頁的其他版本#

本文章有多種語言的版本。

如果您想發表評論,請訪問以下網頁:

ZH EN ZH-TW JA

這些網頁僅支持瀏覽,無法發表評論或留言,但提供了更多語言選項,並且加載時間更短:

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

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。