raspberry-pi2にHubotをインストールしてみた

LINEで送る
Pocket

がじです。
久しぶりの更新です。5月はいろいろ体調管理に失敗して散々でした。

ちょっと前にTwitterでボットをインストールしたって書いたのですが、知人からどうやってやったの?と聞かれたので覚書を兼ねて書いておきます。

そんなのメールでやれ?そのとおりなんですけど、まあいいじゃないですか。

業務用のボットはサーバー上に入れているのですが、ここでは手元にあったraspberry Pi2に導入する方法について書いておきます。そう、自宅用にraspberry Pi2にHubotをインストールしてみました。

−−−スポンサードリンクーーー

−−−スポンサードリンクーーー

今だったらraspberry pi3とかzeroとか使うのが普通でしょうが、多分それほど手順は変わらないと思います。

参考にしたサイトはこちら
他ぷん日記さんの自作Slackボットを作ろうその2です。

なお、当時と状況が変わっているので自分なりにいくつか手を加えています。更にその手の加え方がかなり乱暴な方法を使っているので、私のやったとおりにやらないほうがいいと思います<ヲイ

まずは最初にnodejsとnpmをインストールしました。

$ sudo apt-get install nodejs npm

でもこれでインストールされるNode.jsってV0.12だったんですよね。
ここhttps://github.com/nodejs/LTS/を見てみるとV0.12はすでにEOLを迎えています。

流石にちょっと危なそうなので、V6.x系統をインストールすることにしました。

手順はGitHubhttps://github.com/nodesource/distributions上の記述に従いました。

まず作業の前に一旦古いnodejsを削除しました。

$ sudo apt-get remove nodejs

次いでGitHubの記述に従い、Node.jsのV6.xをインストールします。

# curl -sL https://deb.nodesource.com/setup_6.x | bash –
# apt-get install -y nodejs

これでNode.jsのV6.x系がインストールされるはずです。
raspberry pi2はいろいろと遅いのでかなり時間がかかりますが気長に待ちましょう。

なお、私が作業した時はv6.10.3がインストールされました。

その後でnpmコマンドでYeoman とYoemonのHubotジェネレータをインストールします。

$ npm install -g yo generator-hubot

途中で何故かエラーが出ました。

Error: EACCES: permission denied, access ‘/usr/lib/node_modules’

root権限で実行しても良かったのですが、参照元のブログにhubotが起動しなかったとあるのでちょっと強引な手段に出ます。

$ sudo chmod 777 /usr/lib/node_modules

再度インストール続行

$ npm install -g yo generator-hubot

しかし今度は

Permission denied, unlink ‘/usr/lib/node_modules/.staging’

でエラー。

イラッとしたので更に強引な手段続行

$ sudo chmod 777 /usr/lib/node_modules/.staging

三度インストール続行

$ npm install -g yo generator-hubot

今度はうまく行ったようです。

危険なので書き換えたパーミッションは755に戻しておきましょう。

では任意の場所にディレクトリを作成し、hubotを実行します。

$ mkdir sunbot
$ cd sunbot
$ yo hubot

いろいろ聞かれるので適切に入力していきます。

?Owner: gaji@seigaji.info
?Bot name: sumbot
?Description: gajinote!
?Bot adapter: slack

ザンボットではなくてサンボット(sunbot)です。

SlackのTeamメニューからApplication&settingを選択

botからHubotを選択してAPI Tokenを取得。

export HUBOT_SLACK_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxx

で先ほど取得したAPI Tokenを設定して

./bin/hubot –adapter slack

を実行するとHubotが起動します。

試しにSlack側でhubotを読んでみましょう

正常に動作しています。

hubotはcoffee-scriptで動作するのですが、hubotをインストールしたディレクトリ配下にscriptsディレクトリがありまして、こちらにスクリプトを追加するといろいろ期待動作をしてくれます。

本日はこのあたりで

−−−スポンサードリンクーーー

LINEで送る
Pocket