❀ 前言 ❀

最近發現 UptimeRobot 不再支援 replit.co 了,所以改用 Render 架設我的機器人
詳細資料點我
如果想知道怎麼寫 Discord Bot 也可以看這篇

❀ 正題 ❀

VScode 端

上傳至 Github

首先要把自己的專案上傳至 Github,
我是透過 Visual Studio Code 上傳。
詳細請參考…
!!!注意!!!
別把自己的 token 上傳,那要怎麼啟動 bot 呢
所以這邊就先來講講 Environment Variable 的用法啦!

阿對了,上傳 VScode 檔案至 Github 可參考這篇~

設定環境變數

新增一個.env

在裡面新增變數

os

透過 os 模組就能將值存取出來啦(需用 visual studio code 的 run and debug)

run and debug 在這,也可以按 F5

成功會長這樣

用終端機執行會長這樣

dotenv

也可以使用 dotenv 這個模組
先輸入下面這行安裝模組

pip install python-dotenv

載好之後就能用 dotenv.load_dotenv() 把變數提取出來啦(終端機也可喔)

成功會長這樣

當然,如果把 .env 檔也傳上 Github 就功虧一簣了

.gitignore

這邊利用 .gitignore 選擇 GitHub 不會讀到那些 File

上傳至 Github

都設定完畢後,就可以上傳 Github 啦

Render 端

先申請一個 Render 帳號

新增一個 Web Service

新增 Github 授權給 Render

滑至下方 Repository Access 設定要授權的 Repository

也可選擇特定 Repository

設定

再來就是設定頁,最重要的是 Start Command

gunicorn main

主要看用的是哪一個程式去驅動(這個專案我是以 main.py 啟動)

其餘設定(Instance Type 記得調成 free)

再來是 Environment Variable 的設定(他讀不到在你電腦中的 .env,因此要把 .env 的設定複製來這邊)
本地有什麼參數,這邊就要有什麼參數

成功會長這樣,記得複製此網址,等等會用到

UptimeRobot 端

現在可以啟動 Discord Bot 了
要怎麼達成 24/7 呢
先申請一個 UptimeRobot 帳號

Type 選擇 Https

設定分別填入專案名跟剛剛複製的網址

這邊是設定要不要收到通知

❀ 後話 ❀

最近終於比較閒了,才來重新研究 Discord Bot
網路上的教學卻都是很久以前的(我寫 Bot 的時候的)
現在 Replit.co 不支持 UptimeRobot
Heroku 要收費
所以研究了 Render,死很久的 Discord Bot 才活起來