川のブログ

川の適当気ままなブログです。 

りんなと雑談apiの会話~part2~

こんにちはかわです。

アドベントカレンダー六日目だった記事です。

イレギュラーが入ったため遅れましたすみません。

kawakawa.hatenablog.com

この記事の続きです。

今回はサーバーを作成したいと思います。

サーバー作成

前提として

Rubyとgitを使える状態にしておいてください。

あと

でやってます。

Herokuアカウントの作成

今回はRubySinatraでHerokuで立てたいと思います

まずHerokuアカウントを作成してください。

www.heroku.com

作成したら以下のサイトを参考にHeroku CLIをインストールしてください。

devcenter.heroku.com

Herokuにアップロード

まず適当なところにファイルを作成します。

mkdir talkBot
cd talkBot

Gemfileの作成

bundle init
vim Gemfile

Gemfileに以下を記述

gem 'sinatra'
gem 'line-bot-api'

その後以下を実行

bundle install

これで必要なgemはインストールしました。

動くことを確認するため、テキストを表示するものを作ります。

main.rb
require 'sinatra'
require 'line/bot'

get '/' do
  "Test Program"
end

ローカル上で実行できることを確認

bundle exec ruby main.rb

この状態で [http://localhost:4567/:title] にアクセスして動くことを確認[f:id:nakanaka1826:20171207225010p:plain]

こんな感じになればOK

つぎにProcfileとconfig.ruを作成

touch Procfile config.ru

それぞれのファイルに以下を記述

Procfile
web: bundle exec rackup config.ru -p $PORT
config.ru
require './main'
run Sinatra::Application

ProcfileはHeroku上で何をするかを記述するファイル。

config.ruはRackのサーバ起動コマンドrackupの設定ファイル。

RackはRubyによるWebアプリケーション開発の

HTTP送受信処理を担当するgemです。

これらのファイルをgit管理します。

git init
git add --all
git commit -m "first commit"

herokuコマンドでHeroku用アプリをHeroku上に作成

heroku create talk-bot-kawa

そしてHeroku上にアプリをプッシュし確認

git push heroku master
heroku open

その際ローカルで動かしたものと画面が同じであればOK

今回は以上になります。

これでHeroku上にサーバーがたてられたので

これをうまくいじってLINEBot側との通信を次回行いたいと思います。

kawakawa.hatenablog.com