前回までのあらすじ
第1回: http://shifumin.hatenablog.com/entry/2018/04/20/000500
第2回: http://shifumin.hatenablog.com/entry/2018/04/22/002000
第3回: http://shifumin.hatenablog.com/entry/2018/04/23/000500
第4回: http://shifumin.hatenablog.com/entry/2018/04/24/000500
第5回: http://shifumin.hatenablog.com/entry/2018/04/25/000500
第6回: http://shifumin.hatenablog.com/entry/2018/04/26/000500
第7回: http://shifumin.hatenablog.com/entry/2018/04/27/000500
第8回:
shifumin.hatenablog.com
LINEデベロッパー登録を終え、必要なAPIキーである「Channel Secret」と「アクセストークン」を手に入れました。
また、Railsアプリを作成し、動作することを確認しました。
そして、Railsアプリに公式サンプルコードのオウム返しbotを移植しました。
今回は作成したbotをHerokuにデプロイしていきたいと思います。
git commit
前回でオウム返しbotの実装(移植)が完了しましたので、ここらで git commit
をしておきましょう。
git add . git commit -m "implement echo bot"
git log --stat commit 8fa85e05cdc2617e31e07b3260ca06417ca9862e (HEAD -> master) Author: shifumin <hogehogehogehoge@mail.com> Date: Sun Apr 29 21:58:24 2018 +0900 implement echo bot app/controllers/webhook_controller.rb | 40 ++++++++++++++++++++++++++++++++++++++++ config/routes.rb | 2 +- 2 files changed, 41 insertions(+), 1 deletion(-)
前回の変更内容ですね。
ちなみに、GitHubにリポジトリを作成し、ここまでのコードを上げておきました(随時更新予定)
Herokuへのデプロイ
それではHerokuへのデプロイを進めていきましょう。
なお、Herokuのアカウントを作成していることは前提とします。
今回のHerokuアプリケーションの作成は全体的に下記の公式ドキュメント2つを参考にしました。
Herokuでサンプルボットを作成する
Getting Started with Rails 5.x on Heroku | Heroku Dev Center
Heroku CLIのインストール
最初に、コマンドライン上でHerokuを操作するためにHeroku CLIをインストールしましょう。
例のごとくHomebrewを使ってインストールします。
# brew install heroku/brew/heroku でも可
brew install heroku
Herokuアプリの作成
Heroku CLIをインストールできたら、コマンドライン上でHerokuアプリの作成を進めていきます。
まずはHerokuにログインします。
heroku login (登録したEmailとPasswordの入力)
次にアプリを作成します。
heroku create
でherokuが名前を勝手につけてアプリを作成してくれますが、今回は heroku create <app_name>
でアプリ名を付けて作成しましょう。
heroku create <your-app-name>
Creating ⬢ <your-app-name>... done https://<your-app-name>.herokuapp.com/ | https://git.heroku.com/<your-app-name>.git
Herokuの各種設定
アプリのデータベースにPostgreSQLを利用しているので、それ用のHerokuのアドオンを追加します。
heroku addons:create heroku-postgresql:hobby-dev
また、LINE Messaging APIの利用には下記の環境変数が必要なので登録します。
値は、この連載の第1回で確認した Channel Secret と アクセストークン となります。
heroku config:set LINE_CHANNEL_SECRET=<your_line_channel_secret> heroku config:set LINE_CHANNEL_TOKEN=<your_channel_token>
Herokuへのpush
アプリの作成と各種設定が完了したので、ようやくHerokuへpushします。
git push heroku master
しばらく時間がかかります。
Herokuへのpushが完了したら、Herokuアプリの情報を確認してみましょう。
確認は heroku info
で行います。
heroku info
=== amurosan-bot Addons: heroku-postgresql:hobby-dev Auto Cert Mgmt: false Dynos: web: 1 Git URL: https://git.heroku.com/<your-app-name>.git Owner: your-mail-address@mail.com Region: us Repo Size: 36 KB Slug Size: 47 MB Stack: heroku-16 Web URL: https://<your-app-name>.herokuapp.com/
一番下の Web URL がbotが動作しているURLとなります。
こちらのURLをLINE DevelopersのChannel設定で登録しましょう。
例えば以下のような設定となります。
LINE botの完成
これでようやく連載第9回にして、オウム返しを行うだけの簡単なLINE botですが、動くものを作成することができました。
めでたいですね。
諸事情によりQRコードを消しました><(ツイートからも読み取れないことを確認済)
動作は前回の記事で貼りましたが、現在は本当にオウム返ししか行いません(行えません)。
俺たちの戦いはこれからだ!
しふみん先生の次回作にご期待ください。
次回以降でこのbotの機能改善をしていこうと思います。
終わりに
今回は作成したLINE botをHerokuへとデプロイしました。
次回はローカル環境での動作確認とデバッグについて行なっていきましょう。
参考
shifumin/sample-bot-for-line-bot-api: Sample bot using Line :: Bot :: API implemented in Rails on Heroku.
https://github.com/shifumin/sample-bot-for-line-bot-api
Herokuでサンプルボットを作成する - LINE Developers
https://developers.line.me/ja/docs/messaging-api/building-sample-bot-with-heroku/
Getting Started with Rails 5.x on Heroku | Heroku Dev Center
https://devcenter.heroku.com/articles/getting-started-with-rails5
Heroku CLI | Heroku Dev Center
https://devcenter.heroku.com/articles/heroku-cli
Heroku Postgres | Heroku Dev Center
https://devcenter.heroku.com/articles/heroku-postgresql
Configuration and Config Vars | Heroku Dev Center
https://devcenter.heroku.com/articles/config-vars