地球人

地球人的空间

世上本没有路
tg_channel
mastodon
pleroma

CSUBOT ロボットプログラムをどのように展開しますか?

CSUBOT はオープンソースのスーパーユーザー管理ボットです。

この記事では、CSUBOT を自分でデプロイする方法を紹介します。

まず、この文書を完全にお読みください: CSUBOT ボット使用説明書

推奨: このデバイスが異なるウェブサイトにアクセスする際のパブリック IP を確認する 、現在のネットワーク環境を確認するために使用します。

前提条件#

CSUBOT を自分でデプロイするには、以下の条件を満たす必要があります:

  • ドメインを所有していること。 (少なくとも 1 つのサブドメインを所有しており、バックエンド用です。実際にはフロントエンドとバックエンドで合計 2 つのドメインが必要ですが、一般的にフロントエンドのドメインはデプロイするプラットフォームが提供できます)
  • サーバーを所有していること。または、バックエンドサービスをデプロイできるプラットフォームにデプロイします。無料でバックエンドサービスをデプロイできるプラットフォームを知っている場合は、ためらわずに こちらをクリックして、コメントを投稿して作者に知らせてください
  • 制限されていない Telegram アカウントを持っていること。Telegram ボットを作成し、ボットのトークンを取得するために使用します。
  • 制限されていない Cloudflare アカウントを持っていること。Cloudflare Turnstile CAPTCHA を有効にするために使用します。アカウント登録: 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 を開き、このリポジトリをフォークします。
  2. Cloudflare Pages、Vercel、Netlify など、デプロイするプラットフォームを選択します。
  3. GitHub リポジトリからインポートを選択し、最初のステップでフォークしたリポジトリを選択します。

作業パスをプロジェクトのルートディレクトリに設定し、ビルドコマンドは次のとおりです:

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 を送信します。ボットの指示に従って新しいボットを作成します。作成が完了すると、トークンが送信されます。

バックエンドを構成する#

環境変数の参考#

TGWD_TOKEN=<Telegram ボットのトークン、@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 暗号化で暗号化モードを 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

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。