Google Compute Engine(GCE)でSlackのBotkitを動かすぞい!という話。
以降 Google Compute EngineはGCEと書きます!
Slackのbotkitの詳細については割愛しますが、全く動かしたことないです!って人は一度以下とか読んで簡単なものでも動かしておくといいかもです。
BotkitでSlackのBotをサクッと作る方法 - http://toach.click/slack-botkit/
Google Compute EngineのVM インスタンスを作成する
今回はLinux VMインスタンスを作成します。
公式のドキュメントにそってやれば簡単にインスタンスは作れます。ちなみに、私は操作に慣れているUbuntuを使ってます。
Quickstart Using a Linux VM - https://cloud.google.com/compute/docs/quickstart-linux
インスタンス作るまでの手順は割愛しますが、公式のドキュメントより細かく手順が欲しい!!って方は以下のQiitaとかがオススメです。
【2015年版】AWS ユーザが Google Cloud Platform に15分で入門する!
マシンタイプは「f1-micro(vCPU x 1、メモリ 0.6 GB)」とかで一番安いのでいいでしょう。
VM インスタンスにSSHで入ってnodeをインストールする
gcloudとか使ってターミナルから操作もできますが、そこまで長い作業にならないのでWebのSSHで作業します。
VMインスタンスの一覧画面で、作業したいインスタンスのSSHから以下のように「ブラウザ ウィンドウで開く」を選択すれば、WebのSSHが開きます。
んで、開いたらVM インスタンスにnodeをインストールします。
nodeのサイトに各メジャーOSでnodeをインストールする方法が書いてありますので、作成したVMインスタンスのOSに合わせてコマンドを見つける。
Installing Node.js via package manager
私が普段VMインスタンスで使うOSはUbuntuなので以下のコマンドを実行すればnodeがインストールできます。npmもね。
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
インストールが終わったら一応nodeとnpmのバージョンを確認してインストールされていることとか確認しておくといいですね。
VMインスタンス上で動かすbotkitのサンプルをcloneする
今回使ったのはSlackのBotkitでbotにメンション付きで発言すると、内容をオウム返しするbotさんを動かします!
slack-botkit-sample - https://github.com/operando/slack-botkit-sample
上記のRepositoryをVMインスタンス上で以下のようにcloneします。ついでにnpm installもして実行に必要なモジュールもインストールしておく。
git clone https://github.com/operando/slack-botkit-sample.git
cd slack-botkit-sample
npm install
別途自身で作成したbotがあればそちらを使うでもいいですねー。
ちなみに、Ubuntuは元からgitが入っているので追加で入れる必要はないですが、立ち上げるOSによっては別途追加が必要かもです。
VMインスタンス上でbotkitを動かすぞい!!
VMインスタンス上で動かすbotが用意できたら、あとは実行するだけです。
私が作ったbotなら以下のように実行します。
// your_api_tokenのところに自身のSlackのAPI tokenを入れる
token=your_api_token node parrot-bot.js
起動が確認できたらbotが動いてるSlackに移動して動作確認してみます。
動いた!!
やたー!!動いたー!!
後処理
動いた!!と満足してもうVMインスタンス不要だったら停止するなり削除するなりしておくといいかと。
まとめ
GCEはインスタンスの作成も操作も簡単なのでいいですねー