【Heroku】Pythonで作成したDiscord用のボットをGitHubリポジトリからデプロイするやり方

476 語
2 分
【Heroku】Pythonで作成したDiscord用のボットをGitHubリポジトリからデプロイするやり方

はじまり#

リサちゃん avatar
リサちゃん
よーし!ボットも出来たことだしデプロイするかあー!
135ml avatar
135ml
うむ。今回は、Herokuを使ってデプロイしてみますか。
リサちゃん avatar
リサちゃん
👍

手順(準備)#

Herokuでデプロイする際に必要なファイルを、デプロイ元のリポジトリに準備します。

Procfile#

Dynosサーバが起動した際に走らせるコマンドを書くようです。こんな感じで。

「discordbot」の部分はラベルなので、一応何でも良いそうです。

discordbot: python3 app.py

runtime.txt#

使用するPythonのバージョンを書きます。

python-3.8.10

requirements.txt#

requirements.txtも書いておきます。

###### Requirements with Version Specifiers ######
### for app ###
py-cord[voice]==2.0.0b1
# janome>=0.4.1
gspread>=5.1.1
oauth2client>=4.1.3
asyncio>=3.4.3
git+https://github.com/landmaster135/landmasterlibrary.git

手順(Heroku画面での操作)#

まず、Herokuにログインして(アカウントがなかったらアカウント作成して)ダッシュボード的な場所に遷移します。

そこで、「Create new app」します。

App nameを埋めます。regionはUnited Statesで良さそうです。

次に、「Deployment method」でGitHubを選択します。すると、認証画面が開くので、そこで認証します。

そして、App connected to GitHubでデプロイしたいリポジトリを選択します。

デプロイ方法を「Automatic deploys」にするか「Manual deploy」にするか選べます。

今回は、Manual deployにしたので、下の画面の状態で「Deploy Branch」をクリックするとデプロイが始まります。

すると、ログが書かれるシェル的なものが出てくるので、それが閉じてデプロイが完了するまで待ちます。

デプロイが完了して、Resourcesタブに移動すると、Dynosの部分にProcfileで記述したコマンドが表示されています。

そこで、鉛筆マークを押して、アクティブにして、Confirmします。

アクティブになっているときの画面です。

動作確認#

それでは、サーバも動いたので、Discordで確認してみます。

  • ボットがオンラインになっているのが確認できます。
  • そして、メッセージを打ったら、反応も返ってきています!

おしまい#

リサちゃん avatar
リサちゃん
よっしゃあ〜、動いたな。Herokuのデプロイはかなり簡単だったな。
135ml avatar
135ml
そだね。Python以外のアプリをデプロイした際に、手順がどうなるんだろうね。

参考#

以下のサイトを参考にしました。

以上になります!

記事を共有

この記事が役に立ったなら、ぜひ他の人と共有してください!

【Heroku】Pythonで作成したDiscord用のボットをGitHubリポジトリからデプロイするやり方
https://endorphinbath.com/posts/heroku-how-to-deploy-discord-bot/
著者
kinkinbeer135ml
公開日
2022-01-24
ライセンス
CC BY-NC-SA 4.0
関連記事 スマート
1
【Render.com】Pythonで作成したDiscord用のボットをGitHubリポジトリからデプロイするやり方(Dockerも利用)
Software RenderでPythonで書いたDiscordアプリをGitHubリポジトリからデプロイします。記載した手順で一応実施できたので、ご参考ください。Dockerも使いました。
2
【Heroku】GitHubのリポジトリから新しいアプリをデプロイするときに「Item could not be retrieved: Internal Server Error」が出た場合
Software この前起きた、GitHubのOAuthインシデント後に、Herokuを使ってデプロイしたアプリを再びデプロイするときにデプロイできなくなっているかと思います。そのときにどう対応するかを紹介します。
3
【GitHub】Pythonでリポジトリの情報を取得するCloud Functionsを作る
Code Pythonを使用してGitHubリポジトリの情報を取得し、Cloud Functionsで処理する方法に関する記事です。PyGithubとThreadingで実装および処理を効率的にしました。
4
【GitHub】PythonとGitHub ActionsでProjectsにIssuesを作る作業を自動化する(前編:Pythonのソース)
Code 日々のタスクをGitHub IssuesおよびGitHub Projectsで管理する時に登録する作業が面倒くさいと思います。いちいちオプションを選択して入力する手間が面倒くさいと思います。本記事では、その作業を省略したツールを紹介します。
5
【GitHub】PythonとGitHub ActionsでProjectsにIssuesを作る作業を自動化する(後編:GitHub Actionの内容)
Code 日々のタスクをGitHub IssuesおよびGitHub Projectsで管理する時に登録する作業が面倒くさいと思います。いちいちオプションを選択して入力する手間が面倒くさいと思います。本記事では、その作業を省略したツールを紹介します。
ランダム記事 ランダム
Profile Image of the Author
kinkinbeer135ml
SIerをやめて、プログラミングを勉強しています。※Amazonアソシエイトに参加しています。
お知らせ
私のブログへようこそ!これはサンプルのお知らせです。
音楽
カバー

音楽

再生中なし

0:00 0:00
歌詞なし
カテゴリ
タグ
サイト統計
記事
287
カテゴリー
8
タグ
93
総文字数
486,174
運用日数
0
最終活動
0 日前

目次