-
Notifications
You must be signed in to change notification settings - Fork 8
repl.itで動かす(無料)
tetsuya-ki edited this page Aug 2, 2021
·
12 revisions
- repl.itとuptime robotを使用し、無料で24時間(ダウンタイムはあるらしい...1日数分くらい)動かす方法について解説
-
repl.it
- サーバーを動かすところ(Herokuと違ってクレジットカードは不要)
- ただし、無料版だと他人からもソースが見られてしまうので
.env
の取り扱いには注意
-
uptime robot
- サーバーが休止しないようにアクセスするbot
- gitについて簡単に理解していること
- discord Botアカウントを作成し、アクセストークンを取得していること
- 前述のBotアカウントが自分の管理するDiscordのギルドに招待されていること
- repl.itとGitHub連携でソースをもってくること
下記リンクを開き、右の方にある「Fork」というボタンを押す。
https://replit.com/@tetsuyaki/discord-bot-heroku#readme.md
My replsにコピーされる
pip install poetry
git clone -b for-replit https://github.com/tetsuya-ki/discord-bot-heroku
- uptime robotからアクセスされるサーバーをflaskで作成
# file name is keep_alive.py
from flask import Flask
from threading import Thread
app = Flask('')
@app.route('/')
def main():
return "Your bot is alive!"
def run():
app.run(host="0.0.0.0", port=8080)
def keep_alive():
server = Thread(target=run)
server.start()
# 先頭に下記を追加
import keep_alive
# 「# AssitantBotのインスタンス化および起動処理。」というコメントの周辺、 bot〜と書かれている直前に以下の行を挿入
# start a server
keep_alive.keep_alive()
bot = AssistantBot(
# ...
- 依存関係については
poetry
で対応(他だと思うように動かなかったため)
~/test-dbh$ rm main.py
~/test-dbh$ cd discord-bot-heroku/
~/test-dbh/discord-bot-heroku$ mv * ../
~/test-dbh/discord-bot-heroku$ mv .* ../
~/test-dbh/discord-bot-heroku$ cd ..
~/test-dbh$ rmdir discord-bot-heroku/
- ConsuleかShellで下記コマンドを実行する
chmod 755 start.sh
--1. .envファイルにあるものを、Envに記載していく
- DiscordのBotトークンを記載は必須です!!
- Runボタンをクリックし、Botを起動する
- 右上がflaskで作ったサーバ(このURLで1時間?おきにアクセスしないとサーバーが止まる。後でuptime robotで5分おきにアクセスする)
- 右下がbotのログ
- 注意! 無料版ではPublicに公開されています!
- 参考:こちらで動いてるbotが見られます
https://repl.it/@tetsuyaki/discord-bot-heroku
- uptime robotにアクセスし、アカウントを作成
-
+Add New Monitor
をクリックし、Monitor Type
をHTTP(S)
にする(色々設定が出てくる) - 以下のように設定し、アラートが欲しい場合は、チェックの上、
Create Monitor
をクリックし、監視を作成
Friendly Name*: すきな名前
URL (or IP)*: repl.itをRunした時に立ち上がったブラウザのURL (さっきの画像の場合:「https://discord-bot-heroku.tetsuyaki.repl.co」)
Monitoring Interval*: every 5 minutes
- Discord Pythonボットを24時間起動します。
- Hosting discord.py bots on repl.it
- Pythonとrepl.itを使って無料でDiscord Botを運用してみた
💩をつけまくってみる - 【Discord.js】repl.itとuptimerobotで24時間起動Discord Botの作り方!
-
お試し用のBot招待リンク公開中
https://discord.com/oauth2/authorize?client_id=807791850940661762&permissions=285598928&scope=bot -
注意点
- repl.itで動かしてます。たまに止まるかもしれません
- バージョン管理がちょっと面倒くさいかもしれないので、最新版のリソースが乗っていない可能性があります
- 管理ちゃんねるが登録できないので、それ系の機能が使用できません(サーバーの参加/脱退の監視や監査ログの保存機能など)
- 同様にScrapboxのURL展開機能も使えません