見出し画像

Discord-BCDicebotをさくらのVPSに設置して24時間スマホからでも利用可能な自鯖Discordダイスbotを作る

とても限られた環境の説明しかできませんが…。
2022.10.22 更新

本家様

https://shunshun94.github.io/discord-bcdicebot/index.html

環境

・さくらのVPS1Gプラン
・Ubuntu20.04

1.Discord開発者ページでbotを用意する

ここのBCDice for Browserとやり方は同じです。

2.openjdk環境を整備する

openjdk 14.0.2 2020-07-14
OpenJDK Runtime Environment (build 14.0.2+12-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 14.0.2+12-Ubuntu-120.04, mixed mode, sharing)

な環境を整備します。(ver.8以上ならおそらく他のバージョンでも大丈夫です)

apt update;apt install -y openjdk-14-jdk

上手くいかなかったらこことか見たりぐぐったりして頑張ってください。

3.Ubuntuでgitを使えるようにする

ここの記事の「公開鍵の登録」までを済ませます。

4.BCDiceDiscordをcloneする

git clone https://github.com/Shunshun94/discord-bcdicebot.git

5.カスタムする

start.shを書き換えます。

#!/bin/sh
DISCORD_BOT_TOKEN=Bot用のDiscordアカウントのトークン
BCDICE_API_URL=http:/localhost:9292/
IGNORE_ERROR=1
export BCDICE_PASSWORD=任意のパスワード
# export BCDICE_API_SECONDARY=http://secondary.bcdice-api.yourdomain.co.jp/
# export BCDICE_DEFAULT_SYSTEM=DiceBot
export BCDICE_MENTION_MODE=1
export BCDICE_RESULT_DISPLAY_FORMAT=V1
export BCDICE_SLASH_PREFIX=bcdice
export BCDICE_SLASH_SHORT_PREFIX=d #export  BCDICE_STANDARD_INPUT_DISABLED=disabled

java -jar discord-bcdicebot.jar "$DISCORD_BOT_TOKEN" "$BCDICE_API_URL" "$IGNORE_ERROR"

6.動かしてみる

sh start.sh

動くと設定したパスワード一つで管理者機能が使えるようになってます!!

一度botを止めます。Ctrl+C

7.永続化する

/etc/systemd/system以下に分かる名前でサービスファイルを作成します。私はbcDice-JAVA.serviceの名前で作りました。中身は以下。

[Unit]
Description=bcdice-discord JAVA ver. kaizou
After=network.target
[Service]
Type=simple
WorkingDirectory=/home/ユーザー名/discord-bcdicebot
ExecStart=sh /home/ユーザー名/discord-bcdicebot/start.sh
[Install]
WantedBy=multi-user.target

sudo systemctl daemon-reload
sudo systemctl start 今作ったサービスファイル名
sudo systemctl status 今作ったサービスファイル名

緑の〇が付いていれば成功です。


トラベラーという昔のSFRPGのソロジャーナル化を頑張っています。印刷代の足しにしてやるぜ!という嬉しい方がいましたらメンバーシップ入って頂けると喜びます。