地球人

地球人的空间

世上本没有路
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

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。