広島市立大学 大学祭 Discord サーバー 管理用ボット
このボットは、複数のサーバーに参加して同時に運用されることを全く想定していません。そのような運用をせず、Discord サーバーごとにボットのインスタンスを用意してください!
- ここでは、
$HOME/kanri-chan配下にファイルを設置することを前提とします。- 他の場所に設置する場合は、適宜読み替えてください。
- 以下の作業の実行前に、あなたのサーバーに Docker と curl をインストールしてください。
- 以下のコマンドを実行してリポジトリからファイルをダウンロードします。
mkdir -p data/posts curl -O https://raw.githubusercontent.com/ichidaisai/kanri-chan/main/docker-compose.yml curl -o data/config.yml https://raw.githubusercontent.com/ichidaisai/kanri-chan/main/data/config.sample.yml
$HOME/kanri-chan/config.ymlを編集して、Discord Developer Portal から入手できるトークンを設定します。- ⚠ 注意
- この際、アプリケーションのページから
Botを開き、以下のオプションを有効化します。行わない場合、サーバー上のメンバーの情報を正常に取得できず、一部の処理に失敗します。- Server Members Intent
- Message Content Intent
- この際、アプリケーションのページから
docker-compose.ymlが存在するディレクトリに移動してから、以下のコマンドを実行します。docker compose up -d
- ボットの更新を適用するには、
docker-compose.ymlが存在するディレクトリに移動してから、以下のコマンドを実行します。docker compose pull docker compose up -d
- 以下の作業の実行前に、あなたのコンピュータに Docker と Git をインストールしてください。
- 以下のコマンドを実行するか、またはその他の方法でこのリポジトリをクローンします。
# https git clone https://github.com/ichidaisai/kanri-chan # or ssh # git clone git@github.com:ichidaisai/kanri-chan.git
- 以下のコマンドをリポジトリ内で実行します。
./utils/up.sh
- 以下のコマンドをリポジトリ内で実行します。
./utils/attach.sh
./data/config.sample.ymlを./data/config.ymlとしてコピーし、Discord Developer Portal から入手できるトークンを設定します。- ⚠ 注意
- この際、アプリケーションのページから
Botを開き、以下のオプションを有効化します。行わない場合、サーバー上のメンバーの情報を正常に取得できず、一部の処理に失敗します。- Server Members Intent
- Message Content Intent
- この際、アプリケーションのページから
- 以下のコマンドを、開発用コンテナにアタッチした状態で実行して、必要な Python パッケージをインストールします。
pip install -r requirements.txt
- 以下のコマンドを、開発用コンテナにアタッチした状態で実行します。
python main.py
BSD 3-Clause "New" or "Revised" License